Как произвести в bash/sh простейшие вычисления? Давайте рассмотрим несколько примеров.
Операции с целыми числами
Пока вас интересуют целочисленные вычисления, вы можете пользоваться командами встроенными в bash.
Вот 6 арифметических команд, которые вы можете выполнять:
1 2 3 4 5 6 7 8 9 10 11 12 |
# сложение echo 4 + 5 = $((4 + 5)) # вычитание echo 5 - 4 = $[ 5 - 4 ] # умножение echo 4 x 5 = $((4 * 5)) # деление (результат будет целое число без остатка) echo 6 / 3 = $((6 / 3)) # остаток от деления echo 5 % 4 = $((5 % 4)) # возведение в степень echo 2 ^ 4 = $[ 2 ** 4 ] |
Как видите, для вычисления используется синтаксис: $(( выражение )) или $[ выражение ].
Результаты вычислений можно сохранить в переменную:
1 2 3 4 |
a=2 b=4 result=$(( $a ** $b )) echo $result |
Операции с числами с плавающей запятой в командной строке
Для операций с плавающей запятой нам понадобится внешняя команда. Обычно используют утилиту bc, которая берет на себя роль калькулятора.
Для вывода сразу в консоль используйте цепочку:
1 2 3 |
a=10.5 b=3.2 echo "$a-$b" | bc -l |
Для сохранения промежуточного результата:
1 2 3 4 |
a=10.5 b=3.2 c=`echo "$a-$b" | bc -l` echo $c |