【发布时间】:2019-07-23 00:46:44
【问题描述】:
我想从进程列表 pod_de.csv 文件中删除一个进程
pod_de.csv 文件的内容
NAME READY STATUS RESTARTS AGE
FebwinterMind-897654db-knbbj 2/2 Running 0 46h
DecNightmarch-897654db-n6qhk 2/2 Running 0 6d10h
DecNightmarch-897654db-v2rgt 0/2 Evicted 0 6d10h
DecNightmarch-897654db-5sswn 0/2 Evicted 0 6d10h
DecNightmarch-897654db-hqntn 2/2 Running 0 6d10h
DecNightmarch-897654db-z42r8 2/2 Running 0 35h
DecNightmarch-765897654db-qgbpb 2/2 Running 0 5d14h
AugNightmarch-774bbfc656-96bs6 2/2 Running 0 6d10h
AugNightmarch-774bbfc656-qnnkt 2/2 Running 0 6d10h
FebwinterMind-765897654db-gk5vw 2/2 Running 0 6d13h
FebwinterMind-765897654db-vhk8p 2/2 Running 0 6d13h
ogfileprocess-5h9ih8934b7b-dpbvt 2/2 Running 0 15h
nedesignprocess-765897654db-rshps 2/2 Running 0 6d10h
nedesignprocess-765897654db-rzqf7 0/2 Evicted 0 6d10h
nedesignprocess-765897654db-sbhps 2/2 Running 0 10h
referencedata-765897654db-xlc82 2/2 Running 0 6d11h
clientmyql-58b7d9b687-f9225 2/2 Running 0 5d18h
clientmyql-58b7d9b687-tfmrl 2/2 Running 0 5d18h
我想杀死“ogfileprocess-5h9ih8934b7b-dpbvt”进程
我实现了这个
#!/bin/bash
pods=$(kubectl get pods > pod_de.csv)
echo "$pods"
Running_OG_process=$(awk '/ogfileprocess/{print $1}' pod_de.csv)
echo "Running Process:" $Running_OG_process
kubectl delete pod $Running_OG_process
但是我得到了额外的\r\r\,因此它不会杀死那个特定的进程
Running Process: ogfileprocess-5h9ih8934b7b-dpbvt
Error from server (NotFound): pods "ogfileprocess-5h9ih8934b7b-dpbvt\r\r" not found
从文件中获取的实际值为
ogfileprocess-5h9ih8934b7b-dpbvt\r\r
我想要
ogfileprocess-5h9ih8934b7b-dpbvt
这样我就可以终止进程。
有人可以帮我解决这个问题吗,或者我们可以用其他方式吗?完整的代码将不胜感激
【问题讨论】:
-
CSV 文件中的分隔符是
,请确认。只是因为问题中给出了空格而感到困惑。 -
实际上,在执行“kubectl get pods”之后,我得到了正在运行的进程。我将其写入“pod_de.csv”文件,并尝试从他们那里获取所需的值。
标签: linux bash shell kubernetes