Команды declare и typeset
Команды declare
и typeset
являются встроенными и предназначены для наложения ограничений на переменные. Это попытка контроля над типами, которая имеется во многих языках программирования. Команды абсолютно идентичны друг другу и являются синонимами.
Опции
-r
(readonly, только для чтения). Попытка изменения таких переменных завершается сообщением об ошибке.-i
(integer, целое число). Переменная объявляется как целое число.-a
(array, массив). Переменная объявляется массивом с числовыми индексами.-A
(array, массив). Переменная объявляется как ассоциативный массив (индексы задаются с помощью строк).-x
(export, экспорт). Переменная объявляется как доступная для экспорта.-g
(global, глобальная). При использовании внутри функции делает переменную глобальной.
Команда declare
допускает совмещение объявления и присваивания значения переменной одновременно:
$ declare -x delta=373
Допускается выполнение некоторых арифметических операций над переменными, объявленными как integer
:
$ declare -i var=123 # var целочисленная переменная $ var=var+1 # допустимая арифметическая операция
Вывести список всех определенных функций:
$ declare -f foo () { echo "foo is bar" } world () { echo "Hello World!" }
Не рекомендуется использовать синоним
typeset
, он считается устаревшим.
Поиск: Bash • Linux • declare • Команда • Массив • Переменная