Цикл оболочки не увеличивается - PullRequest
1 голос
/ 16 января 2012

У меня проблема с простым циклом ... и мне интересно, что с ним не так.По сути, я просто хочу увеличить счетчик для каждого найденного файла.

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 Ответ

2 голосов
/ 16 января 2012

Вам не хватает точки с запятой:

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

Без точки с запятой назначение переменной (j=...) не сохраняется за пределами echo.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...