Арифметические подстановки -- это мощный инструмент, предназначенный для выполнения арифметических операций в сценариях. Перевод строки в числовое выражение производится с помощью обратных одиночных кавычек, двойных круглых скобок или предложения let.
- Арифметические подстановки в обратных одиночных кавычках (часто используются совместно с командой expr)
-
z=`expr $z + 3` # Команда 'expr' вычисляет значение выражения.
- Арифметические подстановки в двойных круглых скобках, и предложение let
-
В арифметических подстановках, обратные одиночные кавычки могут быть заменены на двойные круглые скобки -- $((...)) и $((...)) или очень удобной конструкцией, с применением предложения 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' вычисляет арифметическое выражение, #+ это не подстановка арифметического выражения.
Примеры арифметических подстановок в сценариях: