Wenn das Parsen der Ausgabe von lsgefährlich ist, weil einige funky Zeichen (Leerzeichen ,, \n...) beschädigt werden können, wie lässt sich die Anzahl der Dateien in einem Verzeichnis am besten ermitteln?
Ich verlasse mich normalerweise darauf find, dieses Parsen zu vermeiden, find mydir | wc -lwerde aber aus den gleichen Gründen ebenfalls brechen.
Ich arbeite gerade an Solaris, suche aber nach einer Antwort, die für verschiedene Unices und Shells so portabel wie möglich ist.
finderhalten Sie die Anzahl der Dateien rekursiv (verwenden -maxdepth 1Sie, wenn Sie das nicht möchten. find mydir -maxdepth 1 -type f -printf \\n | wc -lsollten die Sonderzeichen im Dateinamen behandeln, da sie überhaupt nicht gedruckt werden.