>> Edit article
이름
제목
패스워드
% 알림 시작 % split의 카운트 방법이 바뀐 것 같습니다. 예전에는 카운트 횟수에 제한이 없었는데.. 지금 살펴보니깐 zz까지 되는군요. --; 덕분에 열심히 짰었던 스크립트가 쓸모 없게 되었군요. 뭐 어차피 그렇게 필요한 스크립트는 아니지만 --;; % 알림 끝 % ## tar.gz -> tar.bz2 형식으로 하려면 (확장자만 바꾸는 것 아님 --;;) 우선 하드 공간이 넉넉하면 $ gzip -d some.tar.gz $ # tar 파일이름을 확인한 후 $ bzip2 some.tar 하드 공간이 부족하면 $ gzip -dc some.tar.gz | bzip2 -f - > some.tar.bz2 저는 이전에 tar.bz2 를 tar.gz 으로 바꾸어야 하는 상황이 있어서 반대로 이용했습니다. bzip2가 없는 시스템에서 풀어야 했거든요. --;; ## tar + gzip(or bzip2) + split 으로 다중 압축 아카이브 만들기 (거창하다.. --;;) split을 이용한 팁은 이곳에서 찾았습니다. 다시 한 번 간략하게 쓰면 tar + gzip 으로 하고.. 50메가씩 나누고 싶다면... $ tar -czvf - /lsn | split -b 50m - lsn.tar.gz_ 이렇게 하시면 lsn.tar.gz_aa lsn.tar.gz_ab lsn.tar.gz_ac . . 이런 순으로 파일을 생성시킵니다. 첫번째 파일은 크기가 지나치게 작지 않다면 file 명령어로 확인해보면 gzip된 파일이라고 알려줍니다. 나머젼 data로 나오고요. 그래서 lsn.tar.gz 이라는 텍스트 파일을 만들어서 약간의 정보를 적어두시면 더 도움이 되리라 생각합니다.(처음 이 파일을 접한 사람을 아리송하겠죠?) 풀려면 $ cat lsn.tar.gz_* | (cd 풀고싶은곳; tar -xzvf - ) 문제는 lsn.tar.gz_* 은 lsn.tar.gz_aa lsn.tar.gz_ab ... 이런식으로 확장이 되어 cat에게 넘겨주는데요. 이 순서가 반드시 본래 파일의 byte order로 되어 있어야 합니다. split에 생성된 파일은 알파벳 순으로 정렬하면 그 순서가 맞습니다. 마지막으로 제가 만든 쉘스크립트 중 가장 긴 길이를 자랑하는(정말 읽기 짜증나는) mtar.sh 입니다. $ mtar.sh -czvf lsn.mtgz /lsn -b 50m 하시면 자동으로 lsn.mtgz_aa lsn.mtgz_ab ... 이렇게 생성을 시켜주고 lsn.mtgz 이라는 이름으로 약간의 정보와 함께 자동으로 파일을 풀 수 있도록해주는 쉘랩퍼(스크립트)를 만들어줍니다. 압축을 풀 때는 $ chmod +x lsn.mtgz $ cd 풀고싶은곳 $ /lsn.mtgz가있는곳/lsn.mtgz 이렇게 하시면 빠진 파일이 없는지 체크하고, 이상이 없으면 파일을 풉니다. 아직 테스트 중입니다. --;; 만일 쓰시려면 각오하시고 쓰십시오. 적어도 하드 포맷은 안될 것입니다. --;; 테스트 결과 ksh에서도 동작하는 듯 보입니다. --;; 느끼는 건데 쉘스크립트에서는 bash만한 것도 없네요. <a href="http://www.linuxstudy.pe.kr/~donkey/shelldul/mtar.sh"><b>mtar.sh</b></a> <b>텍스트로 보기</b> <a href="http://www.linuxstudy.pe.kr/~donkey/shelldul/mtar.sh.txt"><b>mtar.sh</b></a> p.s) chmod +x mtar.sh # 필수 --+ -- 음.. 모질라로 복귀
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved