[英]AWS SSM Parameters Store
无论如何,是否可以直接删除/删除 AWS 参数存储中的所有项目?
我找到的所有命令行都是将它一个一个地删除,或者在给出一个名称列表的情况下将其删除。
我也尝试使用
aws ssm delete-parameters --cli-input-json test.json
与 test.json 文件看起来像这样
{
"Names": [
"test1",
"test2"
]
}
还是不行。。
理想情况下,如果我可以使用 --query 并按原样使用它,那就太好了。
我正在使用 --query 像这样
aws ssm get-parameters-by-path --path / --max-items 2 --query 'Parameters[*].[Name]'
当您需要在 AWS Systems Manager Parameter Store 中按路径删除所有参数并且有 10 多个参数时,您必须处理分页。 否则,命令将失败并显示错误:
An error occurred (ValidationException) when calling the DeleteParameters operation: 1 validation error detected: Value '[/config/application/prop1, ...]' at 'names' failed to satisfy constraint: Member must have length less than or equal to 10
以下使用AWS CLI 分页选项的Bash 脚本按路径从 AWS SSM Parameter Store 中删除任意数量的参数:
#!/bin/bash
path=/config/application_dev/
while : ; do
aws ssm delete-parameters --names $(aws ssm get-parameters-by-path --path "$path" --query "Parameters[*].Name" --output text --max-items 10 $starting_token | grep -v None)
next_token=$(aws ssm get-parameters-by-path --path "$path" --query NextToken --output text --max-items 10 | grep -v None)
if [ -z "$next_token" ]; then
starting_token=""
break
else
starting_token="--starting-token $next_token"
fi
done
您可以将get-parameters-by-path
与delete-parameters
:
aws ssm delete-parameters --names `aws ssm get-parameters-by-path --path / --query Parameters[].Name --output text`
我通过创建两个参数来测试它,然后运行上面的命令。 通过参数成功删除。
这是我的单行解决方案:
$ for key in $(aws ssm get-parameters-by-path --path "/" --recursive | jq -r '.Parameters[] | .Name' | tr '\r\n' ' '); do aws ssm delete-parameter --name ${key}; done
注意:复制粘贴时要小心,因为它会删除“/”下的所有内容
试试这个并执行多次
aws ssm delete-parameters --names `aws ssm get-parameters-by-path --path / --recursive --query Parameters[].Name --output text --max-items 9`
补充以上。 我不得不从参数存储中删除大约 400 个参数。 在命令行中运行以下命令,它做到了! (将 for 循环中的 45 更改为您喜欢的任何数字);
for ((n=0;n<**45**;n++)); do
aws ssm delete-parameters --names `aws ssm get-parameters-by-path --path / --recursive --query Parameters[].Name --output text --max-items 9`
done
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.