NAME READY STATUS RESTARTS AGE
grepme 1/1 Running 0 20h
grepmetoo 1/1 Running 0 19h
结果:
grepme
grepmetoo
如何grep“NAME”下的所有内容并删除其他内容?
答案1
使用
command | cut -d' ' -f1 | tail -n+2
# or if delimiter is tab
command | cut -f1 | tail -n+2
# or
command | awk 'NR>1{print $1}'
# or
command | csvcut -d' ' -c NAME | tail -n+2
# or if delimiter is tab
command | csvcut -t -c NAME | tail -n+2
正如您提到的grep
,您还可以使用
command | grep -o '^[^[:blank:]]*' | tail -n+2
但我更喜欢上述之一,因为它更难阅读。
该cut
解决方案具有最好的性能,也是csvcut
迄今为止最差的。
答案2
首先考虑仅输出所需的数据:
kubectl get pods --no-headers=true -o custom-columns=":metadata.name"
或者
kubectl get pods --no-headers=true -o name
(拉自这个堆栈溢出线程和kubectl 概述)