finden Command I zur Ausgabe von oben wollen 10 Zeilen AWK Befehl in der Liste der Dateien gegeben durch finden, mit diesen Schnipsel: auchDurch Anwenden von Unix Kopf auf AWK
$ find . -name "*.txt" -print -exec awk '$9 != ""' \| head -n10 {} \;
Beachten Sie, dass ich aus drucken möchten die Dateinamen werden verarbeitet.
Aber warum ich eine solche Fehlermeldung erhalten:
awk: cmd. line:2: fatal: cannot open file `|' for reading (No such file or directory)
./myfile.txt
Was ist der richtige Weg, es zu tun?
Ich versuchte ohne Backslash vor dem Rohr. Dennoch gab es einen Fehler:
find: missing argument to `-exec'
head: cannot open `{}' for reading: No such file or directory
head: cannot open `;' for reading: No such file or directory
Bitte erläutern Sie, was Sie zu tun versuchen. Es scheint, als ob Sie versuchen, zwei Dinge auf einmal zu erreichen. –
@YuvalF: 1. Mit AWK Filter Zeilen, die "" in der 9. Spalte enthalten; 2. Zeige nur die obersten 10 Zeilen - nach dem Filter. – neversaint
Versuchen Sie meine aktualisierte Lösung. –