как найти все имя конфигурации запуска, которое имеет общий префикс имени
Я хочу найти все имена конфигурации запуска,которые имеют текст в имени конфигурации запуска.
Для примера: скажем, есть 3 имени конфигурации запуска 'awsLC1' 'xyzLC2' 'aLC3' 'pqrst'
Мне нужен запрос, в котором он возвращает мне 3 конфигурации запуска с использованием AWS CLI.
Я попытался написать следующий запрос, используя JMESpath, но это не сработало, так как LaunchConfigurtionName не является массивом.
aws autoscaling describe-launch-configurations --query LaunchConfigurations[? LaunchConfigurationName [? contains(@,'LC')]].LaunchConfigurationName" --output text
Спасибо!
1 ответ:
Вы можете просто изменить contains (), чтобы оценить поле, которое вы хотите проверить, вместо того, чтобы использовать синтаксис массива
@
. Из документации contains ():Boolean contains (array / string $subject, any $search)
Если предоставленный $ subject является строкой, эта функция возвращает true, если строка содержит предоставленный $ search аргумент.
Пример поиска конфигурационных имен запуска, содержащих 'LC':
contains(LaunchConfigurationName,'LC')
Полный Пример:
aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].LaunchConfigurationName" --output text
Дальнейшее Чтение: