Befreien Sie sich von dem nutzlosen echo
, die falsche exit
und die redundante print
:
awk 'FNR == 3' test*.csv
Sie sollten
verwendenawk 'FNR == 3 { print; nextfile }' test*.csv >> last_file.csv
Das Problem ist, dass wenn Sie exit
verwenden , verhindert es, dass awk Eingaben vollständig verarbeitet. Die nextfile
weist awk an, die Verarbeitung der aktuellen Datei zu stoppen und zur nächsten Datei zu gehen. Die echo
Befehl, da Sie ihn verwenden, ist nicht erforderlich.
Lesen Sie hier mehr:
http://www.gnu.org/software/gawk/manual/html_node/Nextfile-Statement.html
Das könnte für Sie funktionieren (GNU sed):
sed -sn 3p test*.csv >> last_file.csv