Арифметика в Баше

Как добавить вычисления в скрипт Bash

Хотя Bash является языком сценариев, он обладает практически всеми возможностями языка программирования общего назначения. Это включает в себя арифметические функции. Есть несколько вариантов синтаксиса, которые вы можете использовать, чтобы вызвать арифметическую оценку выражения. Возможно, наиболее читаемым является команда let . Например

вычислит 4 раза 1024 и присвоит результат переменной «m».

Вы можете распечатать результат, добавив оператор echo :

Вы можете проверить это из командной строки, введя следующий код:

Вы также можете создать файл, содержащий команды Bash, и в этом случае вы должны добавить строку вверху файла, которая определяет программу, которая должна выполнять код. Например:

при условии, что исполняемый файл Bash находится в /bin/bash . Вам также необходимо установить права доступа к файлу скрипта, чтобы он был исполняемым. Предполагая, что имя файла сценария script1.sh , вы можете установить права на выполнение файла с помощью команды:

После этого вы можете выполнить его с помощью команды:

Доступные арифметические операции аналогичны операциям в стандартных языках программирования, таких как Java и C. Помимо умножения, как показано выше, вы используете сложение:

или вычитание:

или деление:

или по модулю (остаток после целочисленного деления):

Когда операция применяется к той же переменной, которой назначен результат, вы можете использовать стандартные арифметические операторы сокращенного назначения, также называемые составными операторами присваивания. Например, для дополнения имеем:

что эквивалентно “m = m + 15”. Для вычитания имеем:

что эквивалентно “m = m – 3”. Для деления имеем:

что эквивалентно “m = m/5”. А по модулю имеем:

что эквивалентно “m = m% 10”.

Кроме того, вы можете использовать операторы increment и decment :

эквивалентно “m = m + 1”. А также

эквивалентно “m = m – 1”.

И затем есть троичный оператор «вопросительный знак-двоеточие», который возвращает одно из двух значений в зависимости от того, является ли указанное условие истинным или ложным. Например

Правая часть этого оператора присваивания оценивается в «0», если переменная «m» меньше 9. В противном случае она оценивается в 1. Это означает, что переменной «k» присваивается «0», если «m» меньше чем 9 и «1» в противном случае.

Общая форма оператора вопросительного знака-двоеточия:

Арифметика с плавающей точкой в ​​Bash

Оператор let работает только для целочисленной арифметики. Для арифметики с плавающей запятой вы можете использовать, например, калькулятор GNU bc, как показано в этом примере:

«Трубный» оператор «|» передает арифметическое выражение “32.0 + 1.4” в калькулятор bc, который возвращает действительное число. Команда echo выводит результат на стандартный вывод.

Альтернативный синтаксис для арифметики

Обратные кавычки (обратные одинарные кавычки) можно использовать для вычисления арифметического выражения, как в этом примере:

Это добавит 18 к значению переменной «m», а затем распечатает результат.

Чтобы присвоить вычисляемое значение переменной, вы можете использовать знак равенства без пробелов вокруг нее:

Другой способ оценить арифметические выражения – использовать двойные скобки. Например:

Это увеличит в четыре раза значение переменной “m”.

Помимо арифметической оценки, оболочка Bash предоставляет другие программные конструкции, такие как циклы for, циклы while, условные выражения, а также функции и подпрограммы.

Оцените статью
Solutics.ru
Добавить комментарий