OpenVPN SSL подключен и может пропинговать удаленную локальную сеть, но не может получить доступ в Интернете

Попробуйте изменить все +1после exprна + 1.

Без пробела exprвернет ошибку, а $tempбудет пустым. Если $tempпусто, то -ltбудет сравнивать пробел с числом, поэтому и появляется ошибка. Вот один лайнер, который воспроизводит проблему:

t=0;t=`expr $t +1`;[ $t -lt 25 ]

Вывод (в STDERR):

expr: syntax error
bash: [: -lt: unary operator expected

Еще лучше, измените весь код, который использует внешнюю утилиту expr, чтобы использовать собственное внутреннее арифметическое расширение оболочки. Вот такой код:

temp=`expr $temp +1`

...следует изменить на:

temp=$(($temp + 1))

Или, в bash, всю строку можно заменить только:

((temp++))

-1
21.02.2021, 06:49
0 ответов

Теги

Похожие вопросы