阅读953 返回首页    go 微信


查询所有地域下未关联任何实例的安全组 ID__脚本使用示例_用户指南_命令行工具 CLI-阿里云

您可以利用命令行工具,通过如下脚本,查询所有区域下未关联任何实例的安全组,然后进行删除等处理。您可选择下载脚本或编辑脚本内容。

点击下载脚本:getUnUsedSecurityGroupId.zip

脚本内容如下:

  1. #!/bin/bash
  2. for RegionId in `aliyuncli ecs DescribeRegions --filter Regions.Region[*].RegionId --output json | sed '1d' | sed '$d' | sed 's/,//g' | sed 's/"//g'| sed 's/ //g'`
  3. do
  4. cat /dev/null >/tmp/UnUsedSecurityGroupIds.txt
  5. pageNum=1
  6. tcount=`aliyuncli ecs DescribeSecurityGroups --RegionId $RegionId --output json --filter TotalCount`
  7. while ((tcount>0))
  8. do
  9. aliyuncli ecs DescribeSecurityGroups --RegionId $RegionId --filter SecurityGroups.SecurityGroup[*].SecurityGroupId --PageSize 100 --PageNumber $pageNum --output json | sed '1d' | sed '$d' | sed 's/,//g' | sed 's/"//g'| sed 's/ //g'>>/tmp/UnUsedSecurityGroupIds.txt
  10. let pageNum++
  11. let tcount-=100
  12. done
  13. cat /tmp/UnUsedSecurityGroupIds.txt | while read line
  14. do
  15. usedVMCount=`aliyuncli ecs DescribeInstances --RegionId $RegionId --SecurityGroupId $line --output json --filter TotalCount`
  16. if [[ $usedVMCount -eq 0 ]];then
  17. echo $RegionId " " $line
  18. fi
  19. done
  20. done

编辑或下载脚本并赋权(chmod +x)后,您可以通过如下格式直接执行脚本,即会按地域和安全组成对输出所有地域下未使用的安全组 ID。

使用格式说明:

  1. ./getUnUsedSGInfo.sh

输出示例:

  1. [root@AliyunTest]# ./getUnUsedSGInfo.sh
  2. cn-qingdao sg-227f61lts
  3. cn-shenzhen sg-22esa0f7s

最后更新:2016-11-23 16:04:16

  上一篇:go 查询所有区域下未创建任何 VSwitch 的 VPC 列表__脚本使用示例_用户指南_命令行工具 CLI-阿里云
  下一篇:go 使用在线帮助__命令行结构和参数_用户指南_命令行工具 CLI-阿里云