История изменений
Исправление emulek, (текущая версия) :
Вообще одинарные квадратные скобки в современном BASH - это моветон
нет. Это метод работы с файлами. например [ -x filename ] истинно тогда, и только тогда, когда файл существует и доступен для выполнения(причём не кем угодно, а тем, кто запустил bash).
Двойные, насколько я знаю, умеют работать с числами без преобразования.
я проверил, действительно одинаково. Но у (( )) есть преимущество в читабельности, и они однозначны(т.е. работают только с цифрами, а вот сколько будет [[ X < Y ]] сказать сложно, не зная, числа это, или строки. И правила приведения мне не известны, это не сишка, с её стандартом.
local - это же не тип данных, а область видимости.
это был мой ответ на declare -g
Исходная версия emulek, :
Вообще одинарные квадратные скобки в современном BASH - это моветон
нет. Это метод работы с файлами. например [ -x filename ] истинно тогда, и только тогда, когда файл существует и доступен для выполнения(причём не кем угодно, а тем, кто запустил bash).
Двойные, насколько я знаю, умеют работать с числами без преобразования.
я проверил, действительно одинаково. Но у (( )) есть преимущество в читабельности, и они однозначны(т.е. работают только с цифрами, а вот сколько будет [[ X < Y ]] сказать сложно, не зная, числа это, или строки. И правила приведения мне не известны, это не сишка, с её стандартом.