2012-01-16 82 views
1

我遇到了一個簡單的循環問題...我不知道它有什麼問題。 基本上,我只是想爲每個找到的文件增加一個計數器。殼循環不增加

j=0 
files=`ls path |grep "blabla"` 
for i in $files ; 
do j=`expr $j + 1` echo "$j ---- $i"; 
done; 

結果:

0 ---- blabla1 
0 ---- blabla2 
0 ---- blabla3 
0 ---- blabla3 

爲什麼我的計數器不增加?

回答

2

你缺少一個分號:

do j=`expr $j + 1`; echo "$j ---- $i"; 
#     ^-- this is missing from your code 

沒有分號,變量賦值(j=...)不會持續超過該echo

+0

該死的......謝謝:) – Rgonomike 2012-01-16 16:00:51