
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ář.