全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 阿里云办公 培训与认证 物联网

查询所有地域下未关联任何实例的安全组 ID

更新时间:2017-06-07 13:26:11

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

点击下载脚本: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
本文导读目录