【问题标题】:Is there something different about using AWS CLI commands in Bash?在 Bash 中使用 AWS CLI 命令有什么不同吗?
【发布时间】:2020-09-02 22:57:44
【问题描述】:

我正在尝试编写一个脚本来标记 AWS VPC。

我已经使用 AWS CLI 命令对其进行了测试,并且我能够将多个 VPC 作为参数传递并且它可以工作。

但是当我在我的脚本中做同样的事情时,我得到了这个:

调用 CreateTags 操作时发生错误 (InvalidID): ID 'vpc-0e452e6bf5585eaeb vpc-0f4ead0bc0625f657' 无效

这是成功运行的 AWS CLI 命令:

aws ec2 create-tags \                                                                                                     
 --resources  vpc-0f4ead0bc0625f657 vpc-0e452e6bf5585eaeb  \        
 --tags Key=lw:managed,Value=False \
        Key=lw:managed:puppet,Value=False \
        Key=lw:managed:monitoring,Value=False \
        Key=lw:managed:os,Value=False \
        Key=lw:managed:ssm,Value=False \
        Key=lw:managed:backups,Value=False

但我脚本中的相同命令会引发上述错误。

#!/bin/bash

labelVPC () {
  aws ec2 create-tags \
  --resources "$vpcs" \
  --tags Key=lw:managed,Value=$managed \
         Key=lw:managed:puppet,Value=$puppet \
         Key=lw:managed:monitoring,Value=$monitored \
         Key=lw:managed:os,Value=$os \
         Key=lw:managed:ssm,Value=$ssm \
         Key=lw:managed:backups,Value=$backups
  exit
}

if [ $# -ne 2 ]
then
 echo "You supplied wrong arguments"
 echo "example : `basename $0 ` vpc1 vpc2 etc"
exit 1
fi

vpcs=$1
tagValues=$2
managed=$(printf "${tagValues}" | cut -d':' -f1)
puppet=$(printf "${tagValues}" | cut -d':' -f2)
monitored=$(printf "${tagValues}" | cut -d':' -f3)
os=$(printf "${tagValues}" | cut -d':' -f4)
ssm=$(printf "${tagValues}" | cut -d':' -f5)
backups=$(printf "${tagValues}" | cut -d':' -f6)

labelVPC

这就是我运行脚本的方式:

./vpc-tagging-v3.sh "vpc-0e452e6bf5585eaeb vpc-0f4ead0bc0625f657" True:False:True:True:True

【问题讨论】:

  • 我认为您最后需要一个额外的 True/False 用于备份。

标签: bash amazon-web-services quotes amazon-vpc


【解决方案1】:

您将单个参数传递给 `resources:

--resources "$vpcs"

去掉引号

--resources $vpcs

【讨论】:

  • 就是这样。谢谢。
猜你喜欢
  • 2019-09-06
  • 2021-11-12
  • 2021-02-24
  • 2017-11-01
  • 1970-01-01
  • 2022-12-10
  • 2020-05-20
  • 2018-07-07
  • 1970-01-01
相关资源
最近更新 更多