Shell Script
문자열 분리, 특정 컬럼 출력하는 명령 (String split, delimit) - cut, awk, print 명령
AndrewJ
2021. 11. 11. 19:13
반응형
작성일: 2024년 4월 15일
리스트 형태의 문자열(또는 Text 문서)에서 특정 컬럼만 추출하고 싶을 때가 있다.
이런 경우 cut 명령, awk 명령을 이용해서 아래 예제와 같이 문자열에서 원하는 부분을 분리(split, delimit)할 수 있다.
cut 명령 예제
## 예들 들어, "aa.bb.cc." 라는 문자열이 있다면,
## 아래와 같이 실행하면, "aa"만 뽑을 수 있다.
$ echo "aa.bb.cc." | cut -d '.' -f1
aa
$ echo "aa.bb.cc." | cut -d '.' -f2
bb
$ echo "aa.bb.cc." | cut -d '.' -f3
cc
$
awk 명령 예제
## 문자열에서 특정 word만 추출하고자 하면, 아래와 같이 실행한다.
$ echo "10.10.12.49 10.10.12.30 192.168.122.1" | awk '{print $1}'
10.10.12.49
$ echo "10.10.12.49 10.10.12.30 192.168.122.1" | awk '{print $2}'
10.10.12.30
$ echo "10.10.12.49 10.10.12.30 192.168.122.1" | awk '{print $2 " -- " $3}'
10.10.12.30 -- 192.168.122.1