gpt4 book ai didi

bash - AWS 客户端 : how to start all machines found by tag

转载 作者:行者123 更新时间:2023-11-29 09:04:04 25 4
gpt4 key购买 nike

我可以列出所有机器:
aws ec2 describe-instances --filters "Name=tag:Env,Values=my_super_tag"--query 'Reservations[].Instances[].[InstanceId]' --输出文本
然后我希望启动所有找到的机器 - aws cli 表达式允许吗?

解决方法是对接收到的输出(机器 ID)应用下一个 aws cli 命令,但这里我也遇到了问题:

 $ aws ec2 describe-instances --filters "Name=tag:Env,Values=my_super_tag" --query 'Reservations[].Instances[].[InstanceId]' --output text\
| xargs -L1 aws ec2 start-instances --instance-ids
' does not existd (InvalidInstanceID.NotFound) when calling the StartInstances operation: The instance ID 'i-12345677890
xargs: aws: exited with status 255; aborting

奇怪因为有 echo
aws ec2 describe-instances --filters "Name=tag:Env,Values=spt1"--query 'Reservations[].Instances[].[InstanceId]' --输出文本 | xargs -L 1 echo aws ec2 start-instances --instance-ids
我得到输出(按预期执行以下行之一)

aws ec2 start-instances --instance-ids i-2123456789
aws ec2 start-instances --instance-ids i-3123456789
aws ec2 start-instances --instance-ids i-4123456789
aws ec2 start-instances --instance-ids i-5123456789

最佳答案

您可以将一个命令嵌入到另一个命令中,例如:

aws ec2 start-instances --instance-ids `ANOTHER-COMMAND`

那么,试试这个:

aws ec2 start-instances --instance-ids `aws ec2 describe-instances --filters "Name=tag:Env,Values=my_super_tag" --query 'Reservations[].Instances[].InstanceId' --output text`

关于bash - AWS 客户端 : how to start all machines found by tag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43580472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com