-gt: унарный оператор ожидал ошибку в bash
Я написал этот простой скрипт:
i = "1";
b = "4";
if [ "$i"-gt "$b" ]
then
echo ""
fi
Но я получил эту ошибку при попытке запустить его:
[: -gt: unary operator expected
Что такое вонг?
1 ответ
Решение
Пожалуйста, предоставьте полный список ошибок, как вы просите;-)
Программа 'i' в настоящее время не установлена. Вы можете установить его, набрав: sudo apt-get установить iprint b: команда не найдена bash: [: -gt: ожидается унарный оператор
Это имеет только тонкие различия, но работает; изучить это:
я ="1"; б ="4"; if [ "$i" -gt "$b" ] затем эхо "Большого" еще эхо "НЕ БОЛЬШОЙ" фи
i = "1"
интерпретируется bash для запускаi
с параметрами=
а также"1"
,"$i"
из-за 1) ничего не было установлено, то есть""
(нулевая строка) - то же самое с"$b"
Это делает [ "$i"-gt "$b" ]
читать как [ -gt ]
как интерпретация приходит к этому моменту. Также обратите внимание, что, как вы исправили 1) у вас все еще есть проблема "нет места" между "$i"
а также -gt