gpt4 book ai didi

bash - 循环输出并删除bash

转载 作者:行者123 更新时间:2023-12-02 11:37:33 25 4
gpt4 key购买 nike

球队,
我需要删除有错误的k8s集群上的10个Pod。
我得到他们如下:

kubectl get pods --all-namespaces | grep -i -e Evict -e Error | awk -F ' ' '{print $1, $2, $4}'
test-asdfasdf asdfasdf2215251 Error
test-asdfasdf asdfasdf2215252 Error
test-asdfasdf asdfasdf2215253 Error
test-asdfasdf asdfasdf2215254 Error
test-asdfasdf asdfasdf2215255 Error
test-asdfasdf asdfasdf2215256 Error

手动将其删除,如下所示:
kubectl delete pod asdfasdf2215251 -n test-asdfasdf

但是我可以编写只在任何pod上查找错误并删除所有错误的脚本吗?我本人正在编写脚本,但是对此很陌生,因此来晚了。

最佳答案

起点:

kubectl get pods --all-namespaces |
grep -i -e Evict -e Error |
awk -F ' ' '{print $1, $2}' |

将产生以下流:
test-asdfasdf asdfasdf2215251
test-asdfasdf asdfasdf2215252
test-asdfasdf asdfasdf2215253
test-asdfasdf asdfasdf2215254
test-asdfasdf asdfasdf2215255
test-asdfasdf asdfasdf2215256

我们可以去这里:
while IFS=' ' read -r arg1 arg2; do
kubectl delete pod "$arg2" -n "$arg1"
done

我们可以去这里:
xargs -l1 -- sh -c 'kubectl delete pod "$2" -n "$1"' --

或使用 parallel或其他任何工具来做到这一点。

关于bash - 循环输出并删除bash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53507523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com