Ačkoli to není příliš často, jsou chvíle, kdy potřebujete zjistit, kolik souborů je v daném adresáři. Pokud vám například dojde inodeson vašeho systému Linux, budete muset zjistit, který adresář obsahuje tisíce nebo miliony souborů.
V tomto článku vám ukážeme několik různých způsobů, jak zjistit počet souborů v adresáři v Linuxu.
Počítání souborů v adresáři #
Nejjednodušší způsob, jak počítat soubory v adresáři, je vypsat jeden soubor na řádek pomocí ls a výstup nasměrujte do wc pro počítání řádků:
ls -1U DIR_NAME | wc -l
Výše uvedený příkaz vám poskytne součet všech souborů, včetně adresářů a symbolických odkazů. -1 volba znamená seznam jednoho souboru na řádek a -U říká ls aby se výstup netřídil, což zrychluje provádění příkazu.
ls -1U příkaz nepočítá skryté soubory (dotfiles).
Pokud chcete počítat pouze soubory a nezahrnout adresáře, použijte následující:
ls -1Up DIR_NAME | grep -v / | wc -l
-p volba vynutí ls pro připojení lomítka (/ ) indikátor do adresářů. Výstup je přesměrován do grep -v příkaz, který vylučuje adresáře.
Chcete-li mít větší kontrolu nad tím, jaké soubory jsou uvedeny, použijte find místo ls :
find DIR_NAME -maxdepth 1 -type f | wc -l
-type f volba říká find pro výpis pouze souborů (včetně tečkových souborů) a -maxdepth 1 omezit vyhledávání na adresář první úrovně.
Rekurzivně počítat soubory v adresáři #
Chcete-li rekurzivně počítat soubory v adresáři, spusťte find příkaz takto:
find DIR_NAME -type f | wc -l
Dalším příkazem, který lze použít k počítání souborů, je tree který uvádí obsah adresářů ve stromovém formátu:
tree DIR_NAME Poslední řádek výstupu zobrazí celkový počet uvedených souborů a adresářů:
15144 directories, 91311 files
Závěr č.
Ukázali jsme vám, jak počítat soubory v adresáři pomocí ls , find a tree příkazy.
Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.