Есть ли способ передать вывод одной команды CLI AWS в качестве ввода другой?
Я пытаюсь вызвать run-instance и передать полученные идентификаторы экземпляров в качестве входных данных для создания тегов в виде одной строки следующим образом:
aws ec2 run-instances \
--image-id ami-1234 \
--output text \
--query Instances[*].InstanceId | \
aws ec2 create-tags \
--tags 'Key="foo",Value="bar"'
При попытке этого я получаю следующее:
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: argument --resources is required
Возможно ли что-то подобное или нужно прибегнуть к использованию переменных (или как-то иначе, о чем я не думаю)?
Дополнительный фон
Мотивация задать этот вопрос заключается в том, что нечто подобное возможно с помощью инструментов AWS для Windows PowerShell; Я надеялся добиться того же с CLI AWS.
Эквивалентный пример PowerShell:
New-EC2Instance -ImageId ami-1234 |
ForEach-Object Instances |
ForEach-Object InstanceId |
New-EC2Tag -Tag @{key='foo';value='bar'}