| Advanced Bash-Scripting Guide: Искусство программирования на языке сценариев командной оболочки; Версия 2.5 (15 февраля 2004) | ||
|---|---|---|
| Назад | Вперед | |
Арифметические подстановки -- это мощный инструмент, предназначенный для выполнения арифметических операций в сценариях. Перевод строки в числовое выражение производится с помощью обратных одиночных кавычек, двойных круглых скобок или предложения let.
z=`expr $z + 3` # Команда 'expr' вычисляет значение выражения.
В арифметических подстановках, обратные одиночные кавычки могут быть заменены на двойные круглые скобки -- $((...)) и $((...)) или очень удобной конструкцией, с применением предложения let.
z=$(($z+3))
z=$((z+3) # Тоже верно.
# Внутри двойных круглых скобок,
#+ переменные разыменовываются
#+ автоматически.
# $((EXPRESSION)) -- это подстановка арифметического выражения. # Не путайте с
#+ подстановкой команд.
# Внутри двойных круглых скобок допускается выполнение арифметических
# действий без использования оператора присваивания
n=0
echo "n = $n" # n = 0
(( n += 1 )) # Инкремент.
# (( $n += 1 )) это неверно!
echo "n = $n" # n = 1
let z=z+3
let "z += 3" # Кавычки позволяют вставлять пробелы
# Оператор 'let' вычисляет арифметическое выражение,
#+ это не подстановка арифметического выражения.
Примеры арифметических подстановок в сценариях:
| Назад | В начало документа | Вперед |
| Подстановка команд | К началу раздела | Перенаправление ввода/вывода |