·터미널 명령어

csplit

텍스트 처리

쓰는 꼴

csplit [file] '/[pattern]/' '{*}'

크기가 아니라 무늬가 나타나는 자리에서 파일을 자릅니다. 찍히는 숫자는 조각의 바이트 수이고, {*}는 맞는 만큼 되풀이하라는 뜻입니다.

자주 쓰는 옵션

옵션
-fPrefix for the output names; the default is xx
-nHow many digits the number has
-kKeep the files already written if it fails partway
-sDo not print the byte count of each piece
-zGNU: throw away pieces that came out empty
{*}Repeat the pattern as many times as it matches

예시

csplit -z -f part_ log.txt '/^ERROR/' '{*}'

A new file at every ERROR line.

csplit book.txt 100 200

Splits at lines 100 and 200.

파이프로 이어 쓰는 것이 본래 용도입니다. 한 명령이 다 하는 것보다 셋을 잇는 편이 짧습니다.

읽는 방법

  • 대괄호 [ ]는 넣어도 되고 안 넣어도 되는 자리입니다.
  • 점 셋 …은 여러 개를 이어 쓸 수 있다는 뜻입니다.
  • 옵션은 대소문자를 가립니다 — -r과 -R이 다른 명령도 있습니다.

자주 묻는 것

Q. csplit은 무엇을 하나요?

크기가 아니라 무늬가 나타나는 자리에서 파일을 자릅니다. 찍히는 숫자는 조각의 바이트 수이고, {*}는 맞는 만큼 되풀이하라는 뜻입니다.

Q. 어떻게 치나요?

csplit [file] '/[pattern]/' '{*}' — 대괄호는 생략할 수 있는 자리입니다.

Q. 옵션은 몇 개나 자주 쓰나요?

여기 정리한 것은 6개입니다. 전체 목록은 man csplit에 있습니다. 이 명령은 텍스트 처리 갈래입니다.

같이 보는 명령

man 페이지: man csplit