Может ли кто-нибудь помочь мне понять, почему это не работает? - PullRequest
3 голосов
/ 23 декабря 2011
i=0

if [$i -eq 0]
then 
   echo "i is equal to 0"
else 
   echo "NOT EQUAL <><><><><><><><><><><><><><><><><><><>"
fi

это часть скрипта bash и всегда принимает ветвь else.Я совершенно новичок в bash, так что, наверное, что-то глупое

Ответы [ 2 ]

5 голосов
/ 23 декабря 2011

вам нужно [ $i вместо [$i.

Это потому, что [ является встроенной командой, а $i должен быть ее первым параметром.Если вы пропустите пробел между командой и параметром, то оболочка будет искать команду [$i и после оценки скажет вам, что нет команды [0 для выполнения.

1 голос
/ 23 декабря 2011

Вам нужны пробелы после '[' и до ']'.«[» - это команда.

...