SRE/Linux Basics

cut, 문자열 자르기

게임이 더 좋아 2022. 12. 2. 10:29
반응형
728x170

정의

file 이나 stdin 에서 받은 문자열을 잘라내어 새로운 문자열을 만듦

 

 

예제 파일

 

abcdefghijklmnopqrstuvwxyz
abcde fghij klmno pqrstu vwxyz
abcde. fghijklmnop. qrstuvw.  xyz.

 

문자열 자르기 (-c)

cat example.txt

#cut은 각 라인에 대해서 적용됨
#zero-based index 아님 ★★★★★
#index 2~4까지 자름
cut -c 2-4 < example.txt
#10부터 자름(10 포함 O)
cut -c 10- < example.txt
#6까지 자름(6 포함 O)
cut -c -6 < example.txt
#2,5,7만 자름
cut -c 2,5,7 < example.txt

(-d) 를 쓰는 경우 -f를 붙여서 필드를 지정해주어야 한다.

여기서 필드는 나눠지는 chunk라고 생각하면 된다.

cut -d ' ' -f 0 example.txt

cut -d ' ' -f 1 example.txt

cut -d ' ' -f 2 example.txt

cut -d ' ' -f 3 example.txt

filed 는 0으로 될 수 없음

나눠진 field보다 큰 field를 출력해야 하는 경우 마지막 field를 반환함

cut: fields are numbered from 1
Try 'cut --help' for more information.

abcdefghijklmnopqrstuvwxyz
abcde
abcde.

abcdefghijklmnopqrstuvwxyz
fghij
fghijklmnop.

abcdefghijklmnopqrstuvwxyz
klmno
qrstuvw.

딜리미터에 아무것도 넣지 않으면 기본 TAB으로 나눔

 

 

 

 


 

Option

 

 

-b, --bytes 바이트를 기준으로 자름
-c, --characters 문자열을 기준으로 자름
-d, --delimiter 지정한 문자를 구분자로 사용합니다. (default : TAB)
-f, --fields 필드를 기준으로 잘라냅니다.
-z, --zero-terminated 라인의 구분자를 개행문자가 아닌 NULL 을 사용합니다.

 

 

 

 


 

참고 링크

https://www.lesstif.com/lpt/linux-cut-93127007.html

 

728x90
반응형
그리드형