# #gitlab #gitlab-ci
Вопрос:
У меня есть переменная gitlab, как показано ниже:
REGIONS: us-east-1 us-west-2 eu-central-1
Я хочу передать эту переменную gitlab в сценарий оболочки. Но когда я передаю его в скрипт, он извлекает только первый элемент, а остальные игнорируются. Код, используемый для передачи переменной, является: test.sh $REGIONS
Неужели это невозможно передать таким образом или для этого есть способ? Пожалуйста, помогите.
Комментарии:
1. Предполагается
us-east-1 us-west-2 eu-central-1
, что в коллекции должно быть три отдельных значения или одно длинное значение?2. @Daly: В сценарии он будет проходить по каждому региону. Если я напрямую закодирую это в коде, это сработает.
3. Попробуйте заключить значение в кавычки
Ответ №1:
Если REGIONS="us-east-1 us-west-2 eu-central-1"
, то звоню
test.sh $REGIONS
означает, что
us-east-1
будет присвоен первый позиционный параметр$1
us-west-2
будет присвоено$2
eu-central-1
будет присвоено$3
Все переменные можно использовать $@
, но более простым решением было бы указать переменную:
test.sh "$REGIONS"
В этом случае $1
будет содержаться us-east-1 us-west-2 eu-central-1