pba*_*ski 5 bash amazon-web-services
我可以列出所有计算机:
aws ec2 describe-instances --filters "Name=tag:Env,Values=my_super_tag" --query 'Reservations[].Instances[].[InstanceId]' --output text
然后我希望启动所有找到的计算机-aws cli表达式允许吗?
解决方法是将下一个aws cli命令应用于接收到的输出(机器ID),但是在这里我也遇到了问题:
$ 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
Run Code Online (Sandbox Code Playgroud)
奇怪,因为有了回声,
aws ec2 describe-instances --filters "Name=tag:Env,Values=spt1" --query 'Reservations[].Instances[].[InstanceId]' --output text | 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
Run Code Online (Sandbox Code Playgroud)
您可以将一个命令嵌入另一个命令,例如:
aws ec2 start-instances --instance-ids `ANOTHER-COMMAND`
Run Code Online (Sandbox Code Playgroud)
因此,请尝试以下操作:
aws ec2 start-instances --instance-ids `aws ec2 describe-instances --filters "Name=tag:Env,Values=my_super_tag" --query 'Reservations[].Instances[].InstanceId' --output text`
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2174 次 |
| 最近记录: |