Der schnellste Weg, die Anzahl der Dateien in einem Verzeichnis zu ermitteln, besteht darin, den Wert von kMDItemFSNodeCount
dieses Verzeichnisses abzurufen Metadatenattribut.
mdls -name kMDItemFSNodeCount directory_name -raw|xargs
Der obige Befehl hat einen großen Vorteil über find . -type f | wc -l
, dass es die Zählung fast sofort zurückgibt, sogar für Verzeichnisse, die Millionen von Dateien enthalten.
Bitte beachten Sie, dass der Befehl die Anzahl der Dateien erhält, nicht nur normale Dateien.
Ich verstehe nicht, warum die Leute 'find' verwenden, denn für mich ist es viel einfacher, 'ls' einfach so einzufügen:
ls *.png | wc -l
um die Anzahl der PNG-Bilder im aktuellen Verzeichnis zu finden.
Du scheinst die richtige Idee zu haben. Ich würde -type f
verwenden um nur Dateien zu finden:
$ find some_directory -type f | wc -l
Wenn Sie nur Dateien direkt unter diesem Verzeichnis haben möchten und nicht rekursiv durch Unterverzeichnisse suchen möchten, können Sie den -maxdepth
hinzufügen Flagge:
$ find some_directory -maxdepth 1 -type f | wc -l
Öffnen Sie das Terminal und wechseln Sie zum Speicherort des Verzeichnisses.
Geben Sie ein:
find . -type f | wc -l
Dies sucht innerhalb des aktuellen Verzeichnisses (dafür steht das .) nach allen Dateien und zählt sie.