Бесплатный хостинг в Интернете для рабочих станций

<Предыдущая | Содержание: | Следующая>

Расширения для управления пустыми переменными

Несколько расширений параметров предназначены для работы с несуществующими и пустыми переменными. Эти расширения удобны для обработки отсутствующих позиционных параметров и присвоения параметрам значений по умолчанию.

${параметр:-слово}

If параметр не задано (т. е. не существует) или пусто, это раскрытие приводит к значению слово. Если параметр не пусто, раскрытие приводит к значению параметр.



[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: - "замещающее значение, если не установлено"}

замените значение, если не установлено [me @ linuxbox ~] $ эхо $ foo


[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: - "замещающее значение, если не установлено"}

бар

[я @ linuxbox ~] $ эхо $ foo

бар

[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: - "замещающее значение, если не установлено"}

замените значение, если не установлено [me @ linuxbox ~] $ эхо $ foo


[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: - "замещающее значение, если не установлено"}

бар

[я @ linuxbox ~] $ эхо $ foo

бар


${параметр:=слово}

If параметр не задано или пусто, это раскрытие приводит к значению слово. Кроме того, стоимость слово назначен на параметр. Если параметр не пусто, раскрытие приводит к значению параметр.


[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: = "значение по умолчанию, если не задано"}

значение по умолчанию, если не установлено [me @ linuxbox ~] $ эхо $ foo значение по умолчанию, если не установлено [me @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: = "значение по умолчанию, если не задано"}

бар

[я @ linuxbox ~] $ эхо $ foo

бар

[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: = "значение по умолчанию, если не задано"}

значение по умолчанию, если не установлено [me @ linuxbox ~] $ эхо $ foo значение по умолчанию, если не установлено [me @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: = "значение по умолчанию, если не задано"}

бар

[я @ linuxbox ~] $ эхо $ foo

бар


Примечание. Позиционные и другие специальные параметры не могут быть назначены таким образом.



${параметр:?слово}

If параметр не задано или пусто, это раскрытие приводит к завершению сценария с ошибкой, и содержимое слово отправляются в стандартную ошибку. Если параметр не пусто, раскрытие приводит к значению параметр.



[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo:? "параметр пуст"}

bash: foo: параметр пуст [me @ linuxbox ~] $ эхо $?

1

[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo:? "параметр пуст"}

бар

[я @ linuxbox ~] $ эхо $?

0

[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo:? "параметр пуст"}

bash: foo: параметр пуст [me @ linuxbox ~] $ эхо $?

1

[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo:? "параметр пуст"}

бар

[я @ linuxbox ~] $ эхо $?

0


${параметр:+слово}

If параметр не задано или пусто, расширение ни к чему не приводит. Если параметр не пусто, значение слово заменяется параметр; однако ценность параметр не изменено.



[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: + "замещающее значение, если установлено"}


[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: + "замещающее значение, если установлено"}

[я @ linuxbox ~] $ foo =

[я @ linuxbox ~] $ echo $ {foo: + "замещающее значение, если установлено"}


[я @ linuxbox ~] $ foo = bar

[я @ linuxbox ~] $ echo $ {foo: + "замещающее значение, если установлено"}


замещающее значение, если установлено

замещающее значение, если установлено


Лучшие облачные вычисления для ОС в OnWorks: