2013-09-30 3 views
0

Я Мессинг с помощью сценариев оболочки и застрял в какой-то сравнения, в то время как петляShell скрипт Хотя петли

while [$size -le $MAX] 
do 
------ 
done 

выше цикл не работает. Что я делаю не так ?

ответ

4

У вас нет свободных мест [ и ].

Скажи:

while [ $size -le $MAX ] 

[ является командой, также известный как test. Когда вы говорите [$size, оболочка интерпретирует его как строку, а не как команду.

+0

Thaank у devnull и @dogbane для ответа. Это решило мою головную боль. Это немного пробежало меня. – Stunner

+0

@Stunner См. [Это] (http://stackoverflow.com/help/someone-answers). – devnull

0

Вам нужны пробелы вокруг скобок, например: while [ $size -le $MAX ].

Однако, это более читаемым, если вы используете арифметическое выражение Баш вместо:

while ((size <= MAX)) 
do 

done 
Смежные вопросы