В программировании на Bash переменные играют жизненно важную роль в преобразовании скрипта в соответствии с современным стандартом. Переменные — это именованные символы, представляющие строку или числовое значение. Ознакомьтесь с этим подробным руководством по переменным Bash для получения дополнительной информации.
При создании переменной Bash она должна иметь значение. Однако мы можем использовать некоторые приемы, чтобы установить значение по умолчанию, если переменная не установлена (или null). Это руководство продемонстрирует, как это сделать.
Значения переменных оболочки по умолчанию
Способ 1 – Установка значения переменной (если не установлено)
Давайте начнем со следующей демонстрации. Выполните следующую команду:
$ echo $country
Команда ничего не вернет, так как значение страны не было установлено изначально. Если значение переменной не установлено, используя следующую технику, мы можем присвоить значение.
$ echo ${country=Greenland}
Здесь Bash проверит, сохранено ли какое-либо значение переменной country. Так как переменная не была задана ранее, она присвоит ей значение «Greenland».
Способ 2 — Установка значения переменной (если не установлено)
Следующий метод будет похож, но использует другой синтаксис. Взгляните на следующий пример:
$ echo ${country:-Greenland}
Здесь,
- Имеет ли переменная страна значение?
- Если да, то выведите значение.
- Если нет, используйте значение по умолчанию «Greenland».
По сути, мы устанавливаем значение по умолчанию, которое будет использоваться, когда переменная не установлена или имеет нулевое значение.
Способ 3 — присвоение значения по умолчанию пустой переменной
В этом разделе будет показано, как присвоить значение по умолчанию переменной, если переменная пуста. Структура команды следующая.
$ {<variable>:=<default_value>
Давайте реализуем это на примере.
$ echo ${country:=Greenland}
Здесь,
- Переменная страна пуста?
- Если да, то присвойте значение «Greenland».
- Если нет, то новое значение не присваивается.
Мы также можем продемонстрировать это, используя следующие команды. Запустите их один за другим:
$ echo ${country:=Greenland} $ country=Iceland $ echo ${country:=Greenland} $ unset country $ echo ${country:=Greenland}
Здесь,
- Команда 1: Поскольку переменная страна не установлена, ей будет присвоено значение по умолчанию «Greenland».
- Команда 2: значение страны обновляется до «Iceland».
- Команда 3: Переменная country уже содержит значение «Iceland», поэтому «Greenland» не присвоена.
- Команда 4: Очищает содержимое переменной country .
- Команда 5: Печатает «Greenland», поскольку страна не имеет никакого значения ( сброшено с последнего шага).
Последние мысли
В этом кратком руководстве показано, как присвоить значение по умолчанию, если переменная Bash не установлена или не имеет значения. Этот метод может быть полезен в различных ситуациях, например, при обработке ошибок при попытке доступа к неопределенным переменным.