嘗試從文件列表中測試文件大小是否爲零回顯關於該文件的消息,或者對包含某些內容的文件執行其他幾項操作。爲什麼在這個Bash腳本的「if」中沒有任何操作,而在「then」中沒有任何操作?
我的文件列表只包含一個零字節的文件。然而,在找到該文件後,每個文件都會按照它們全部具有零字節的方式進行操作。去你的意見
for f in $(cat suffixes.txt)
do
if [ ! -s "$f" ] ;
then
echo *.$f exists with size zero bytes
else
echo "+++++++++++++++++++++++++"
echo for file *.f$
echo number of lines equals
cat *.$f | wc -l
echo occurences of \"trade\" in file equals
grep -o trade *.$f | wc -l
echo "+++++++++++++++++++++++++"
fi
done
[不要用'for for'讀取行](http://mywiki.wooledge.org/DontReadLinesWithFor)。 –
難道你不是指'如果[-e「$ f」] && [! -s「$ f」]'?如果你不測試'-e',你不知道'!' -s'告訴你。 –
此外,您正在測試一個名爲'「$ F」',而不是他的名字*結束在*文件'* .f'文件與測試。 –