2012-01-16 53 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