我想创建一个awk脚本来计算它有多少个文件作为参数, 如果我在BEGIN或END使用计数器,结果将始终为1; awk是否将我提供的文件合并为参数?
无论我提供多少个文件作为参数,以下脚本都会打印“1” (“n”将用于计算所有文件中的单词数量)
BEGIN {nrFiles++}
{ n+=NF}
END {print nrFiles}
最终结果:
{ n+=NF}
END {print "Number of files=",ARGC-1, "\nNumber of words=",n,"\nMean number of words=",n/(ARGC-1) }
感谢您的时间
答案 0 :(得分:2)
$ awk 'BEGIN { print ARGC - 1 }' file1 file2 file3
3
答案 1 :(得分:2)
如果您有GNU awk,还有:
gawk 'BEGINFILE {n++; nextfile} END {print n}' *