Policz pliki w katalogu rekursywnie

Count Files Directory Recursively



Czasami konieczne jest ustalenie dokładnej liczby plików dostępnych w określonym katalogu. Problem pojawia się, jeśli katalog zawiera jeden lub więcej podkatalogów. W zależności od liczby plików i katalogów ręczne liczenie może być praktycznie niemożliwe.

W tym przewodniku sprawdź, jak rekurencyjnie zliczać pliki w katalogu w systemie Linux.







Liczenie plików

Podstawowe liczenie plików
Do demonstracji przedstawiamy przykładowy katalog z wieloma podkatalogami.



$ drzewo demo_dir



Jak widać, polecenie tree drukuje rekurencyjnie całą strukturę katalogów z liczbą plików na końcu. Jeśli jednak liczba plików i katalogów jest zbyt duża, uzyskanie raportu jest nieefektywne.





Alternatywnym sposobem jest użycie poleceń find i wc. Najpierw polecenie find wygeneruje listę plików w katalogu. Następnie polecenie wc policzy linię wyjściową, określając liczbę plików.

Polecenie będzie wyglądać mniej więcej tak.



$ znajdź -typ f | wc-l

W przypadku polecenia find, oto krótkie wyjaśnienie flag i argumentów.

  • : Katalog, w którym ma zostać wykonane zliczanie plików.
  • -type f: Określa typ pliku (plik/katalog) do wyszukania. Tutaj f oznacza tylko pliki.

W przypadku polecenia wc, oto krótkie wyjaśnienie flagi.

  • -l: Zlicza liczbę linii. Działa poprzez zliczanie liczby znaków nowej linii na wyjściu.

Zastosujmy polecenie do naszego katalogu testowego.

$ find ./demo_dir -type f | wc-l

Jeśli to możliwe, zaleca się korzystanie z pełnej ścieżki katalogu.

$ znajdź /home/viktor/Desktop/katalog_demo -type f | wc-l

Liczenie z katalogami
Jeśli katalogi mają być również uwzględnione w zliczaniu, użyj zamiast tego następującej struktury poleceń. Polecenie find wydrukuje katalogi i kolejne pliki w danych wyjściowych.

$ znajdź | wc-l

Głębokość katalogu
Polecenie find obsługuje głębokość katalogu. Głębokość katalogu określa, jak głębokie będzie wyszukiwanie w poszukiwaniu plików.

Istnieją dwa typy głębokości katalogów, które znajdują wsparcie.

  • maxdepth: obniży się maksymalny poziom. Wartość maxdepth będzie nieujemną liczbą całkowitą.
  • mindepth: Minimalna głębokość wymagana, aby find działał na katalogu. Wartość mindepth będzie nieujemną liczbą całkowitą.

Przyjrzyjmy się tym wartościom w działaniu. Struktura polecenia find wyglądałaby tak.

$ find -maxdepth

$ znajdź -mindepth

Zliczanie plików za pomocą GUI

Jeśli masz możliwość użycia GUI do sprawdzenia liczby plików, możemy policzyć pliki w katalogu za pomocą menedżerów plików. Menedżery plików pozwalają użytkownikom na eleganckie zarządzanie plikami i katalogami. Każdy menedżer plików obsługuje wszystkie podstawowe funkcje, takie jak wyszukiwanie, kopiowanie, przenoszenie, tworzenie i usuwanie plików. Niektóre menedżery plików obsługują nawet zaawansowane funkcje, takie jak połączenia SSH.

Oto niektóre z najlepszych menedżerów plików dostępnych dla systemu Linux. Większość z nich powinna być dostępna dla wszystkich popularnych dystrybucji Linuksa.

Menedżer plików Nautilusa
Jest to domyślny menedżer plików pulpitu GNOME. Ma bardzo uproszczony interfejs użytkownika, łatwą nawigację i zarządzanie.

Kasy Menedżer plików Nautilusa .

Menedżer plików Konquerora
Konqueror jest domyślnym menedżerem dostarczanym z pulpitem KDE. Ma uproszczony menedżer plików z dodatkowymi funkcjami, takimi jak obsługa FTP/SFTP, udziały smb (Windows), zgrywanie audio itp.

Konqueror używa silnika renderującego KHTML. Kasy Konqueror .Name .

Menedżer plików delfinów
Dolphin zastępuje Konquerora jako domyślny menedżer plików na pulpicie KDE. Jest to darmowy, open-source, lekki menedżer plików, który ma na celu prostotę, elastyczność i pełną personalizację. Umożliwia użytkownikom płynne przeglądanie, lokalizowanie, kopiowanie i przenoszenie plików w systemie Linux. Zawiera inne interesujące funkcje, takie jak podgląd plików, nawigacja w kartach, sortowanie plików i grupowanie itp.

Kasy Delfin .

Menedżer plików SpaceFM
W przeciwieństwie do innych opisanych menedżerów plików, SpaceFM jest samodzielnym menedżerem plików, który nie jest związany z żadnym środowiskiem graficznym. To piękny menedżer plików dostępny dla wszystkich popularnych dystrybucji Linuksa. Posiada integrację bash, wbudowany VFS i dostosowywanie menu itp.

Kasy SpaceFM .

GNU Midnight Commander
Wreszcie, GNU Midnight Commander to menedżer plików dla wiersza poleceń. Jest to pełnoprawny menedżer plików, ale na ekranie konsoli. Obsługuje wszystkie klasyczne funkcje, takie jak wyszukiwanie, kopiowanie, przenoszenie i usuwanie plików itp.

Kasy GNU Midnight Commander .

Końcowe przemyślenia

Liczenie plików w systemie Linux wcale nie jest trudne. Wszystko, czego wymaga, to posiadanie odpowiedniego narzędzia i wiedzy, aby to rozgryźć. Miejmy nadzieję, że ten przewodnik z powodzeniem zademonstrował, jak rekursywnie liczyć pliki w katalogach w systemie Linux.

Życzymy miłego korzystania z komputera!