Linux 명령어: split 사용법
Linux split 명령어 사용법입니다. -l, -b, -C, -d, -a, --additional-suffix 옵션과 나눈 파일을 다시 합치는 방법을 예제로 정리했습니다.
Linux 명령어: split 사용법
split은 큰 파일을 여러 개의 작은 파일로 나누는 명령어다. 로그 파일을 일정 줄 수로 나누거나, 대용량 파일을 전송 가능한 크기로 쪼갤 때 유용하다.
예제 파일 만들기
mkdir -p ~/split-lab
cd ~/split-lab
seq -f "line-%04g" 1 25 > sample.log
wc -l sample.log
head sample.log줄 수 기준으로 나누기: -l
split -l 10 sample.log part-
ls -lh
wc -l part-*part-aa, part-ab, part-ac처럼 suffix가 붙는다.
byte 크기 기준으로 나누기: -b
split -b 100 sample.log bytes-
ls -lh bytes-*문자 수 기준: -C
-C는 line을 가능한 유지하면서 지정한 크기 이하로 나눈다. 텍스트 로그를 나눌 때 -b보다 보기 좋을 수 있다.
split -C 100 sample.log chunk-
wc -c chunk-*
cat chunk-aa숫자 suffix 사용: -d
split -l 10 -d sample.log numeric-
ls -lh numeric-*suffix 자리수 지정: -a
split -l 5 -d -a 3 sample.log fixed-
ls -lh fixed-*확장자 붙이기: --additional-suffix
split -l 10 -d -a 2 --additional-suffix=.log sample.log app-
ls -lh app-*.log다시 합치기
split으로 나눈 파일은 이름 순서대로 붙이면 하나로 복원된다.
cat app-*.log > restored.log
cmp sample.log restored.log && echo "same file"마무리
split을 쓸 때는 줄 기준이면 -l, byte 기준이면 -b, 텍스트 줄을 보존하고 싶으면 -C를 선택한다. 나중에 합칠 계획이 있으면 suffix 규칙을 명확히 정해 파일 순서가 틀어지지 않게 해야 한다.