Я использовал функцию подстановки переменных среды в Типобезопасная конфигурация:
foo = "foo"
foo = ${?FOO}
Это приводит к значению «по умолчанию» «foo», если нет переменной среды с именем FOO
. В этом случае второе объявление значения (foo = ${?FOO}
просто отбрасывается). Однако, если переменная с именем FOO
существует, библиотека "заменит" значение FOO
и присвоит его foo
.
Я хотел бы подобное поведение с массивами, но, к сожалению, это не работает так, как ожидалось:
foo = [ "1", "2" ]
foo = [ ${?f1}, ${?f2} ]
В случае, когда f1
и f2
не определены, это просто приводит к тому, что foo
является пустым массивом. Моя цель — добиться такого же эффекта, как указано выше (отбросить второй foo
, если переменные окружения f1
и f2
не определены). Любые идеи/предложения приветствуются. Спасибо.
foo = [ ${?f1}, ${?f2} ]
foo += "1"
foo += "2"
Вышеупомянутое даст вам все, что установлено в среде, за которой следуют два значения по умолчанию. Вы также можете начать с пустого массива дляfoo
и добавить две переменные среды. - person MrProper   schedule 10.02.2017