24

Мне было интересно, можно ли делать простые математики в Bash? Я думаю, что-то вроде, = 25-5 напечатает 20 или что-то.

Это можно сделать легко?

Спасибо

6 ответов6

50

Если мы действительно говорим о Bash, а не о Bourne Shell (sh) или других оболочках, это легко.

Bash может вычислить базовые выражения с помощью $((expression)), и вот пример того, как вы можете его использовать:

 a=3
 b=4
 c=$((7*a+b))
 echo $c

или для интерактивного использования, просто

 echo $((7*3+4))
18

Просто введите bc в терминал. Затем введите все математические вещи после этого.

bc расшифровывается как « b asic c alculator»

Затем введите quit и введите для выхода.

9

Есть несколько утилит командной строки для выполнения простых вычислений:

$ expr 100 \* 4
400

$ echo '100 * 4' | bc
400

назвать только два из них. Будьте осторожны при умножении, так как если вы не избежите *, оболочка может попытаться интерпретировать его как подстановочный знак.

6

Ну, на ваш вопрос ответили, но учтите это:

В большинстве дистрибутивов Linux предустановлен Python, так почему бы не использовать его?

Просто введите

python

в терминале, а затем делайте всю арифметику, какую хотите, например,

2+2

Будет выходной 4 :)

Вы также можете сделать это прямо из терминала с аргументом -c python.

python -c 'print 2+2'
6

Другой это AWK:

awk 'BEGIN {4 + 3 / 12}'
3

Или Рубин. :)

Хотя он может и не быть предустановленным, он довольно быстрый.

Введите irb , затем 2+2 .

Или просто ruby -e 'p 2+2'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .