Я только что наткнулся на синтаксис bash:
foo=42
bar=$[foo+1] # evaluates an arithmetic expression
Когда я зашел в Google, я нашел http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_04.html#sect_03_04_05:
3.4.6. Арифметическое расширение
Арифметическое расширение позволяет оценивать арифметическое выражение и замену результата. Формат арифметического расширения:
$(( EXPRESSION ))
...
По возможности пользователи bash должны пытаться использовать синтаксис с квадратными скобками:
$[ EXPRESSION ]
Однако это будет только вычислять результат EXPRESSION и не выполнять никаких тестов...
На моей странице bash я могу найти только форму $(( EXPRESSION ))
, например:
foo=42
bar=$((foo+1)) # evaluates an arithmetic expression
Итак, какие тесты не выполняются с помощью $[...]
, которые работают с $((...))
, или это $[...]
только устаревшая версия $((...))
?