Antworten:
Wenn Ihre Version die erforderlichen Optionen unterstützt wc
und find
unterstützt:
find . -name pattern -print0 | wc -l --files0-from=-
Dies gibt Ihnen die Anzahl der Dateien sowie die Gesamtzahl. Wenn Sie nur die Summe wollen:
find . -name pattern -print0 | wc -l --files0-from=- | tail -n 1
Eine weitere Option für Versionen find
, die dies unterstützen:
find . -name pattern -exec cat {} + | wc -l
Leider ist die Ausgabe von:
find . -iname "yourpattern" -exec cat '{}' \; |wc -l
fügt zusätzliche Zeilen ein. Um eine zuverlässige Zeilenanzahl zu erhalten, sollten Sie Folgendes tun:
find . -name "yourpattern" -print0 | xargs -0 wc -l
Auf diese Weise können Sie Leerzeichen korrekt behandeln, eine Zeilenanzahl für jede Datei und die Gesamtzeilenanzahl schneller und stilvoller erhalten !!!
Ein weiterer einfacher Weg, um nein zu finden. Zeilen in einer Datei:
wc -l filename
Beispiel:
wc -l myfile.txt
Ungetestet, aber wie wäre es mit so etwas wie:
cat `find . -name "searchterm" -print` | wc -l
wc -l `find -name filename`
wird effizient arbeiten.