Я использую Ubuntu 14.04 и я попытался это:Как определить две переменные х = 20, у = 5, а затем напечатать деление х и у (т.е. х/у) - Баш
$ x=20
$ y=5
$ expr x/y
Но я получил эту ошибку:
expr: non-integer argument
Я использую Ubuntu 14.04 и я попытался это:Как определить две переменные х = 20, у = 5, а затем напечатать деление х и у (т.е. х/у) - Баш
$ x=20
$ y=5
$ expr x/y
Но я получил эту ошибку:
expr: non-integer argument
Вы должны расширять переменные, чтобы получить их значения: $x
и $y
:
expr $x/$y
Использование современных Bash арифметика:
echo $((x/y))
Чтобы присвоить результат переменной z
:
((z = x/y))
Чтобы проверить значение z
:
echo $z
он работал ..thank вас Renaud Pacalet –
'expr' является обсолютным, избегайте его, когда это возможно (см. Мой ответ) – janos
Это не устарело, это единственное, что доступно в оболочке POSIX pr ogramming. Он только что был заменен в расширенных оболочках арифметическими операторами, такими как '((..))'. Но в качестве общего заявления я согласен с вашим комментарием. –