Shell循环不递增

时间:2012-01-16 15:44:46

标签: shell for-loop

我遇到一个简单的循环问题......我想知道它有什么问题。 基本上,我只想为找到的每个文件增加一个计数器。

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

为什么我的计数器没有递增?

1 个答案:

答案 0 :(得分:2)

你错过了一个分号:

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

如果没有分号,变量赋值(j=...)不会超出echo