Зміст
- Як додати обчислення до сценарію Bash
- Арифметика з плаваючою точкою в Баші
- Альтернативний синтаксис для арифметики
Як додати обчислення до сценарію Bash
Хоча Bash є мовою сценаріїв, він має майже всі можливості мови програмування загального призначення. Сюди входять арифметичні функції. Існує ряд варіантів синтаксису, які можна використовувати для наведення арифметичної оцінки виразу. Мабуть, найбільш читабельним є той дозволяти командування. Наприклад:
нехай m = (4 * 1024)
обчислить 4 рази 1024 та призначить результат змінній "m".
Ви можете роздрукувати результат, додавши відлуння заява:
ехо $ м
Ви також можете створити файл, що містить команди Bash, і в цьому випадку слід додати рядок у верхній частині файлу, який визначає програму, яка повинна виконувати код. Наприклад:
#! / бін / баш
припускаючи, що виконуваний файл Bash знаходиться в / бін / баш. Вам також потрібно встановити дозволи вашого файлу сценарію таким чином, щоб він виконувався. Припустимо, що ім'я файлу сценарію є script1.sh, ви можете встановити дозволи, щоб зробити файл виконуваним за допомогою команди:
chmod + x script1.sh
Після цього ви можете виконати його за допомогою команди:
./script1.sh
Доступні арифметичні операції схожі на ті, що застосовуються у стандартних мовах програмування, таких як Java та C. Крім множення, як показано вище, ви використовуєте додавання:
нехай m = (5 + 5)
або віднімання:
нехай m = (10 - 2)
або поділ:
нехай m = (10/2)
або модуль (залишок після цілого поділу):
нехай m = (11/2)
Коли операція застосовується до тієї ж змінної, якій присвоюється результат, ви можете використовувати стандартні оператори присвоєння арифметичних скорочень, які також називаються операторами складеного призначення. Наприклад, ми маємо:
((m + = 15))
що еквівалентно "m = m + 15". Для віднімання ми маємо:
((m- = 3))
що еквівалентно "m = m - 3". Для поділу ми маємо:
((м / = 5))
що еквівалентно "m = m / 5". А для модуля ми маємо:
((m% = 10))
що еквівалентно "m = m% 10".
Крім того, ви можете використовувати приріст і декремент оператори:
((m ++))
еквівалентно "m = m + 1". І
((м--))
еквівалентно "m = m - 1".
Арифметика з плаваючою точкою в Баші
The дозволяти Оператор працює лише для цілої арифметики. Для арифметики з плаваючою комою ви можете використовувати, наприклад, калькулятор GNU bc, як показано в цьому прикладі:
відлуння 32,0 + 1,4 | до н.е.
Оператор "труби" | " передає арифметичний вираз "32,0 + 1,4" в калькулятор bc, який повертає дійсне число. Команда echo друкує результат на стандартний вихід.
Альтернативний синтаксис для арифметики
Зворотні посилання (назад єдині лапки) можна використовувати для оцінки арифметичного вираження, як у цьому прикладі:
ехо `expr $ m + 18`
Це додасть 18 до значення змінної "m", а потім роздрукує результат.
Щоб призначити значення обчислення змінній, ви можете використовувати знак рівності без пробілів навколо неї:
m = `expr $ m + 18`
Ще один спосіб оцінки арифметичних виразів - використання подвійних дужок. Наприклад:
((m * = 4))
Це вчетверо збільшить значення змінної "m".
Окрім арифметичної оцінки, оболонка Bash забезпечує інші конструктивні конструкції, такі як for-loops, while-loops, conditionals, а також функції та підпрограми.