
Wie kann auf Linux-basierten Servern die genaue Anzahl von Dateien oder Verzeichnissen innerhalb eines bestimmten Ordners ermittelt werden? Hier kommt der Befehl
find in Verbindung mit
wc zum Einsatz, wie die folgenden Beispiele zeigen.
# Dateien zählen
find /serverpfad/verzeichnis -type f | wc -l
find ermittelt alle Dateien im angegebenen Verzeichnis, wobei die Suche rekursiv erfolgt. Es werden also alle Dateien in eventuell vorhandenen Unterverzeichnissen mit berücksichtigt. Als Ausgabe würde nun eine Liste der gefundenen Dateien angezeigt werden. Hier kommt der zusätzliche Befehl
wc (word count) ins Spiel: In Verbindung mit der wc-Option
-l werden die Zeilen der Ausgabe des find-Befehls gezählt und nur die Anzahl der gefundenen Dateien ausgegeben.
Natürlich können mit dieser Methode auch vorhandene Unterverzeichnisse selbst gezählt werden. Dafür ist die Suchoption
-type d (directory) zu verwenden:
# Verzeichnisse zählen
find /serverpfad/verzeichnis -type d | wc -l
Zu beachten ist, dass hier das Startverzeichnis mitgezählt wird - bei 2 Unterverzeichnissen wird die Ausgabe also 3 betragen.
Mit der Option
-maxdepth lässt sich die Suchtiefe begrenzen.
-maxdepth 1 etwa reduziert die Suche auf die oberste Ebene, also auf das Startverzeichnis:
# Suchtiefe begrenzen
find /serverpfad/verzeichnis -type f -maxdepth 1 | wc -l