본문 바로가기
Operating System/Linux & Unix

[LINUX] split 명령을 이용한 파일 분할

by 이미존재 2022. 11. 1.
반응형

■ Linux의 split 명령으로 대용량 파일을 분할합니다.


1. 테스트 파일 생성
[root@raonyn]# ls -l /usr/bin >> ./split_test

2. split 명령으로 파일을 라인 단위로 분할합니다.(-l 옵션은 1개 파일당 라인수)
[root@raonyn]# split -l 500 split_test sp_test
ex) split -l 1개파일 라인수 원본파일명 변경파일명

3. 결과는 변경파일명+aa,ab,ac 형태로 파일이 생성 됩니다.

[root@raonyn]# ls -l
합계 11924
-rw-r--r--    1 root     root        34087  6월 19 09:49 sp_testaa
-rw-r--r--    1 root     root        33655  6월 19 09:49 sp_testab
-rw-r--r--    1 root     root        23493  6월 19 09:49 sp_testac
-rw-r--r--    1 root     root        91235  6월 19 09:48 split_test


■ tar와 split를 이용한 분할 압축 


1. 기본적으로 압축을 하려면 다음과 같은 방법을 씁니다.
[root@raonyn]# tar zcvfp test.tar.gz test/ 

2. 분할 압축을 방법
[root@raonyn]# tar zcvfp - test/ | split -b 500m - test.tar.gz 

500메가씩 분할 되어 test.tar.gzaa ... test.tar.gzac 까지의 파일이 생성되면서 압축이 됩니다. 

3. 이 파일을 압축 해제 하는 방법은 다음과 같습니다.
[root@raonyn]# cat test.tar.gz* | tar zxvfp - 

4. 분할한 파일을 병합 할때는 다음과 같이 하면 됩니다. 
[root@raonyn]# cat test.tar.gz* | test.tar.gz 

5. 만일 tar에서 gzip을 지원하지 않는 경우는 다음과 같이 하면 됩니다. 

[root@raonyn]# tar cvfp - test/ | gzip - | split -b 500mb - test.tar.gz 
[root@raonyn]# cat test.tar.gz* | gzip -d - | tar xvfp -
728x90

댓글