2
我一直在使用一個for循環:
for F in *.txt
do
echo `wc -w $F`
done
這已返回的單詞數和文件的名稱。我不明白爲什麼它會一直返回文件的名稱;它看起來應該只返回文件中的字數。
我一直在使用一個for循環:
for F in *.txt
do
echo `wc -w $F`
done
這已返回的單詞數和文件的名稱。我不明白爲什麼它會一直返回文件的名稱;它看起來應該只返回文件中的字數。
這是wc
的默認行爲,它顯示計數後的文件名。
如果你只是想計數,通過STDIN傳遞文件名:
wc -w <filename
而且,不使用for
在文件迭代,你可以只使用通配符用於獲取一次文件名,wc
需要多個參數這樣就不會出現一個問題:
wc -w *.txt
在這種情況下,擺脫了文件名,使用一些文本處理:
wc -w *.txt | awk '{print $1}'
這應該比您已經使用的for
方法更快。
是的,這有幫助。謝謝 – ENS
'man wc'是你的朋友。 – codeforester
使用'echo'是多餘的;只需使用'wc -w「$ F」'。 – chepner