강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

tar 압축법
작성자 : 13 김영철
등록날짜 : 2009.01.29 16:47
2,962

tar 명령은 파일을 묶는 명령입니다. 원래는 백업을 위해 테이프백업 장치인 DAT  Device 에 백업을
할 때 쓰는 명령이었지만, 요즘은 파일의 압축이나 묶기에 더 많이 쓰이는 것 같습니다.압축명령에는
compress 나 gzip 이 따로 있지만 tar 명령으로 통합해서 쓰면 편리하고 좋습니다. 이해를 돕기 위해 압축이나 묶여지는 파일을 "대상파일" 이라고 하고,  압축해서 생긴 파일을 "생성파일" 이라고
하겠습니다. 우선 파일을 묶는 방법에 대해 알아 봅시다.

묶기    $ tar cvf  생성 파일명.tar  대상 파일명 또는 대상 디렉토리

풀기    $ tar xvf  생성 파일명.tar


tar 명령으로 파일을 묶을 때는 주의해야 할 것이 있는데 바로 디렉토리 단위로 묶는 것입니다.
공개 자료실등에서 tar 파일을 받아서 풀 경우 디렉토리 단위로 묶지 않은 파일이면 수십개의
파일이 풀려 나와 디렉토리가 엉망이 됩니다.  신경을 써야 됩니다.
tar는 아카이브 안의 파일에 대한 소유권과 허가권을 그대로 가지고 있으며, 심볼릭 링크나 하드링크,
디렉토리 구조를 유지합니다. 뒤에 나오지만 tar를 이용해서 시스템내에서의 데이터의 이동이나
복사에 자주 사용됩니다.


$ tar cvf  doc.tar doc/


위 명령은 디렉토리 doc를 모두 묶어서 doc.tar 파일로 만드는 명령입니다. 풀기는

$ tar xvf doc.tar


doc.tar 파일이 풀리면서 /doc 가 생깁니다. tar 파일의 종류는 다음과 같습니다.

*.tar       

   *.tar.Z     <-- compress 로 압축했을 때

   *.tar.z     <-- gzip 으로 압축(gunzip으로 푼다)  

   *.tar.gz              "

   *.tgz                  "


압축은 compress 나 gzip 등의 명령을 쓰면 됩니다.

 $ compress   대상파일명.tar

 -> 대상파일명.tar.Z

 $ gzip           대상파일명.tar

 -> 대상파일명.tar.gz


풀기는

 $ uncompress  대상파일명.tar.Z

-> 대상파일명.tar

 $ gunzip          대상파일명.tar.gz

-> 대상파일명.tar


각각의 경우에서 뒤의 확장자 .Z .gz가 붙고 떨어지는 것을 주의 깊게 보셔야 합니다.
파일을 풀기 전에 tar 파일의 내용을 알고 싶을 때 직접 풀지 않고 내용을 보려면 -t 옵션을 주면
풀기를 test 할 수 있습니다.

$ tar tvf  대상 파일명.tar


위에서 말 했듯이 tar 명령으로 묶기와 압축을 동시에 수행할 수 있습니다.
바로 tar 명령에서 z 옵션을 주면 되지요.

$ tar cvfz

  $ tar xvfz

  $ tar tvfz


그럼  응용을 해볼까요.  다음의 네 가지는 파일을 묶고 압축하는 방법과 풀기입니다.

1. 전통적인 사용방법

 $ tar cvf  생성파일명.tar  대상파일/

-> 생성파일명.tar

 $ gzip     생성파일명.tar

-> 생성파일명.tar.gz

 $ gunzip  생성파일명.tar.gz

-> 생성파일명.tar

 $ tar xvf   생성파일명.tar

-> 대상파일/


2.파이프를 이용한 압축

$ tar cvf - 대상파일/ | gzip > 생성파일명.tgz 

->  생성파일명.tgz

$ gunzip -c  생성파일명.tgz | tar xvf -

->  대상파일/


3. 동시수행

 $ tar cvfz  생성파일명.tgz  대상파일/

-> 생성 파일명.tgz

 $ tar xvfz  생성파일명.tgz

-> 대상파일/


4. 묶어서 디렉토리 옮긴 후 풀기 

tar cvf - 대상파일명 | ( cd 디렉토리명 ; tar xvf - )

4번은 파일이나 디렉토리를 묶어서 파이프로 넘기고 cd로 목적 디렉토리로 가서 파일을 푸는 과정으로 하위 디렉토리가 복잡한 디렉토리의 이동에 유용하게 사용됩니다.


출처 : Tong - ddakzzi님의 SERVER통

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
2775 동적 테이블 생성 DHTML 99 단국강토 02.09 2987
2774 PHP 환경 설정을 변경하는 방법 13 김영철 01.14 2986
2773 MS SQL 서버 확장 스토어드 프로시저 만들기 13 김영철 01.23 2986
2772 제로보드 스킨 - 공지사항 겸 메모장 10 액션쟁이 12.29 2984
2771 모서리 둥근 입체 버튼 만들기 M 최고의하루 12.18 2983
2770 MSSQL DBA GUIDE - 테이블 관리 13 김영철 01.23 2983
2769 SQL : Categories : 뷰(View). 13 김영철 01.23 2982
2768 mysql 테이블 스키마 보는법 13 김영철 01.29 2979
2767 ssh 재시작(각종 변곃후) 13 김영철 01.29 2979
2766 APM에서 utf-8 구현 방법 13 김영철 01.14 2979
2765 옛날 기사를 찾아보고 싶을때 99 단국강토 01.08 2979
2764 서로 다르게 CSS소스 적용하는 방법 99 단국강토 02.10 2978
2763 항상 새로 고침 13 김영철 01.14 2973
2762 썸네일 만들기 13 김영철 01.14 2972
2761 윈도우 단축키 2 찡가 01.12 2970
2760 [PHP-SRC] SMTP Mail Class 13 김영철 01.14 2969
2759 데이터베이스 만들기 13 김영철 01.23 2969
2758 숫자앞에 0붙이기 13 김영철 01.14 2969
2757 TFS Setup 13 김영철 01.23 2968
2756 자바스크립트 활용도 높은 소스 Tip 모음 99 단국강토 02.16 2966
2755 외각선따내기 10 액션쟁이 12.31 2965
2754 MS-SQL에서 개선된 페이징 쿼리 13 김영철 01.23 2963
열람중 tar 압축법 13 김영철 01.29 2963
2752 윈도우2003 서버 SP1 환경에서 IIS에 php 설치 하기 M 최고의하루 12.18 2962
2751 하루전 날짜(시간) 또는 날짜 구하기 13 김영철 01.14 2961
2750 관리자 화면 기본환경설정페이지 (adm/config_form.php) M 최고의하루 12.19 2960
2749 [MSSQL] OPENROWSET 13 김영철 01.23 2959
2748 CSS] 기본문법 - id(#)는 한번사용, class(.)는 반복 99 단국강토 02.03 2957
2747 다음부터..창띄우지않기[쿠키이용] 99 단국강토 02.10 2956
2746 요일 구하기 함수 13 김영철 01.14 2956
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취