리눅스 문자열 나누기 cut 명령어

리눅스 cut 명령어로 문자열 자르기

cut 명령어는 파일(file)이나 입력에서 받은 문자열을 잘라서 새로운 문자열을 만들어 내는 명령어 입니다.

다양하게 활용이 가능하고 잘 사용하게 되면 굉장히 유용한 명령어 예요

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

 

/etc/passwd

/etc/passwd 계정 정보에서 cut을 사용해서 원하는 데이터를 분리해 보도록 하겠습니다.

 

cut -b

# cut -b 2-16 /etc/passwd

2~16 비트(bit) 사이의 값을 출력해 줍니다.

cut -c

# cut -c 2-10 /etc/passwd

2~10 까지의 글자 수(character)를 출력해 줍니다.



cut -d

# cut -d ':' /etc/passwd

-d는 필드를 지정해 줘야 사용이 가능합니다. 그렇지 않으면 "바이트, 문자, 또는 필드로 된 목록을 지정해야 합니다." 라는 문구가 출력되며 명령어 상요이 되지 않습니다.
-f 옵션과 함께 사용하시면 됩니다.

cut -d -f

# cut -d ':' -f 5 /etc/passwd

 

: 문자열 기준으로 5번째 항목에 있는 값을 출력해주는 명령어입니다.
-d 옵션이 자주 유용하게 사용할 수 있을 것 같습니다.

cut -f

# cut -d ':' -f 1,7 /etc/passwd

 

이런식으로 -f 1,7 을 이용해 원하는 필드를 조합해서 꺼내 올 수도 있습니다.

댓글

Designed by JB FACTORY