如何使用Azure CLI强制删除所有资源组且无需确认提示?
解决Azure CLI批量删除westus区域资源组(无需确认)的问题
问题原因
你遇到的错误是因为xargs的参数传递顺序有误,导致-n(指定资源组名)后面没有接资源组名称,反而直接跟了-y参数,触发了"expected one argument"的错误。
正确命令
通过xargs的占位符功能确保参数顺序正确,执行以下命令即可批量删除westus区域所有资源组且无需确认:
az group list --query "[?location=='westus']".name -o tsv | xargs -I {} az group delete -n {} -y
命令解释
az group list --query "[?location=='westus']".name -o tsv:筛选出westus区域的所有资源组名称,以制表符分隔输出xargs -I {}:定义占位符{},代表从管道传递过来的每个资源组名称az group delete -n {} -y:对每个资源组执行删除操作,-n {}指定资源组名,-y跳过确认提示
如果需要查看执行的具体命令(类似原命令的-otl参数效果),可以添加-t参数打印执行过程:
az group list --query "[?location=='westus']".name -o tsv | xargs -t -I {} az group delete -n {} -y
内容的提问来源于stack exchange,提问作者anon
相关产品推荐
相关产品推荐

