我编写了一个 shell 脚本,通过 http://checkip.amazonaws.com 获取我的curl
IP地址
我试图做的是获取我所有安全组的列表,并通过 AWS CLI 将该 IP 地址添加到每个安全组。
我到目前为止的脚本是:
#!/bin/bash
# Get IP Address
IP_ADDR="`curl http://checkip.amazonaws.com`"
IP_ADDR="$IP_ADDR/32"
cat /dev/null > /tmp/ec2.info
tmpFile="/tmp/ec2.info"
ec2Info=`ec2-describe-group --region eu-west-1 > $tmpFile`
sec_groups=`cat $tmpFile | grep GROUP | cut -f4`
echo "You are using IP Address: $IP_ADDR"
echo ""
for security_group in $sec_groups
do
echo ""
echo $security_group
echo ""
ec2-authorize --region eu-west-1 $security_group –p 22 -s $IP_ADDR
done
该脚本可以正常获取 IP 地址和我的安全组列表。但是,当脚本到达该ec2-authorize
行时,我遇到了一个问题。
我收到一条错误消息:
WARNING: Ignoring extra parameter(s): [ ?p, 22 ]
Required option '-p, --port-range PORT-RANGE' missing (-h for usage)
正如您从脚本中看到的那样,我添加了-p
指定端口的参数。它似乎忽略了$security_group
变量之后的所有内容。
有任何想法吗?