簡體   English   中英

AWS-CLI:過濾AutoscalingGroup,ecs群集/服務

[英]AWS-CLI: Filtering the AutoscalingGroups, ecs clusters/services

我試圖提出一個腳本,以基於某種配置文件自動設置所需的AutoScalingGroups數量,例如SHUTDOWN配置文件應將所有內容設置為零。
單一帳戶本身有很多應用程序。 因此,當在命令下運行時,它將提供所有資源。

aws ecs list-clusters

有沒有一種方法可以通過標簽或任何其他方式過濾這些標簽? 顯然--filter對於aws ecsaws autoscaling命令不是有效的選項。

我現在正在使用grep命令。

aws ecs list-clusters | grep string1 | grep string2

不確定是否正是您要的內容,但是如果您想使用這些命令的JSON輸出(或通常對所有JSON字符串進行過濾/轉換),沒有比jq更好的工具了。 需要花費一些時間,但此工具可能會成為您最好的朋友。

安裝后,您可以發出以下命令:

  • aws ecs describe-clusters|jq -r '.clusters[]|{clusterName, status}'
    通過信息創建集群名稱/狀態列表。

  • aws ecs describe-clusters|jq -r '.clusters[]|if .status == "INACTIVE" then .clusterArn else null end'
    列出所有不活動的群集。

  • 以這種方式添加刪除命令以刪除所有不活動的集群(不要運行它!):
    aws ecs describe-clusters|jq -r '.clusters[]|if .status == "INACTIVE" then .clusterArn else null end'|xargs aws ecs delete-clusters --clusters

我只有一個集群可供使用,我沒有測試這些命令是否仍然適用於許多集群(正確解析了JSON表),但是您明白了...

jq教程: https : //stedolan.github.io/jq/tutorial/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM