壳是sh。
我一直在使用for循环:
for F in *.txt do echo `wc -w $F` done
这已经返回了单词的数量和文件的名称。 我不明白为什么它一直返回文件的名称; 它看起来应该只返回文件中的字数。
这是wc
的默认行为,它显示计数后的文件名。
如果你只是要计数,通过STDIN传递文件名:
wc -w <filename
另外,不用迭代使用for
的文件,你可以使用globbing来获取文件名, wc
需要多个参数,所以不会有问题:
wc -w *.txt
在这种情况下,为了摆脱文件名,使用一些文本处理:
wc -w *.txt | awk '{print $1}'
这应该比你已经采取的方法更快。