NAME READY STATUS RESTARTS AGE
grepme 1/1 Running 0 20h
grepmetoo 1/1 Running 0 19h
결과:
grepme
grepmetoo
"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 개요)