我有一个很好的.awk脚本,它获取第二个$ 2值并打印出来。因为.txt文件中的数据只下降了8192行,所以后面的任何行都无关紧要(脚本会处理这个问题。)我有400多个.tst文件需要完成相同的操作并将输出放入一个文件。那么我将如何浏览当前目录中的每个.tst文件?我尝试将cat输出管道连接到脚本的单行版本,但它只处理了第一个文件。有什么建议吗?
BEGIN{
}
{
print $2 "\n";
if (NR==8192)
exit;
}
END {
print NR "\n";
}
答案 0 :(得分:3)
这应该有效 -
awk 'FNR<=8192{ print $2 }' *.tst > finalfile
答案 1 :(得分:1)
只需对当前目录中的所有.tst
文件进行全局处理,然后将输出重定向到outfile
:
$ awk 'FNR<=8192{print $2"\n";next}{print FNR"\n";nextfile}' *.tst > outfile