如何将AWS CLI list-backup-plans输出作为get-backup-plan多ID输入?
解决AWS Backup批量获取备份计划的命令问题
你的原命令问题出在aws backup list-backup-plans默认输出JSON格式的数组(比如["plan-id-1", "plan-id-2"]),直接传给xargs时会包含引号、方括号这些无效字符,导致get-backup-plan无法识别正确的备份计划ID。
正确的命令需要让输出转为纯文本格式,每个ID单独一行:
aws backup list-backup-plans --query BackupPlansList[*].BackupPlanId --output text | xargs -I {} aws backup get-backup-plan --backup-plan-id {}
如果需要更稳定的处理(比如ID中包含特殊字符的情况),可以用while循环:
aws backup list-backup-plans --query BackupPlansList[*].BackupPlanId --output text | while read -r plan_id; do aws backup get-backup-plan --backup-plan-id "$plan_id" done
核心是通过--output text参数让AWS CLI输出纯文本的ID列表,避免JSON格式的干扰,确保后续命令能正确读取每个备份计划ID。
内容的提问来源于stack exchange,提问作者Hemanandhini K
相关产品推荐
相关产品推荐

