
상황
ReplicaSet에 따로 Label, Selector가 설정되어 있지 않은 상태
ReplicaSet를 수정하고, Pods에 반영하기 위해서는 기존 Pods들을 삭제해야 한다
필요한 명령어
수작업 대신 한꺼번에 삭제하는 방법
삭제할 대상 조회 : kubectl get

삭제할 대상들은 공통 Prefix를 가지고 있다 : grep

조회 정보에서 1번째 컬럼 정보만 출력 : awk

awk
- 파일이나 레코드(조회 결과처럼 공백으로 구분되어져 있는 각 줄)에 포함된 값을 조작하거나 데이터화
- 이번 명령어에서 한 일 : 특정 필드만 출력
- 공백 기준 각 단어들을 필드로 칭하고 $1,,,$N으로 순서를 구분할 수 있다
- $0는 레코드(모든 필드를 포함한 한 행) 그 자체
- 그 이외에도 특정 필드에 문자열 추가, 패턴이 포함된 레코트 출력, 특정 필드에 연산 수행 등 다양하게 활용 가능하다
앞에서 출력한 결과들을 뒤 명령어의 인자로 전달 : xargs

xargs
- 파이프 이전에 명령을 인자로 받아 명령어를 실행
- 이번 명령어에서 한 일 : 앞에 출력한 pod 이름들을 kubectl delete pod 명령어의 인자로 만들어 수행
- 그 외에도 조회한 txt 파일을 모두 읽어와 하나의 파일로 병합, 복사, 다운 등 활용 가능
* 대체 : grep 대신 awk 속성 가능

awk 자체에서 패턴을 가진 문자열을 추출할 수 있다
awk '/포함_문자열/ {print $1}'
댓글