Skip to content

Linux 기본명령어 tar #
Find similar titles

Structured data

Category
Programming

리눅스 기본명령어 - tar #

tar 명령어 #

tar는 tape archive의 약자로, 파일 형식 혹은 명령어를 의미한다. 초기에는 테입의 백업 목적으로 개발되었으나, 현재는 배포 혹은 아카이브 용도로 사용된다. 즉, 디렉토리의 구조, 파일의 속성들을 보존하면서 여러 개의 파일을 하나의 큰 파일로 묶기 위해 주로 사용된다.
tar의 경우, 파일을 압축하는 gzip과 함께 사용되는 경우가 잦아, 압축 용도라고 생각하는 경우가 있다. 그러나 직접적인 압축이 아닌, 디렉토리/파일의 구조를 유지하는 용도임을 이해해야 한다.

사용법 #

$ tar [옵션] [경로]
  • 옵션
    c: 생성, x: 확장, t: 목록, v: 자세한 정보 (파일 이름 나열)
    j: bzip2, z: gzip을 compress/uncompress 에 이용
    f filename: 아카이브 파일 이름 지정.

  • 경로
    절대 경로와 상대 경로 모두 가능하다.


기본적으로 위와 같은 형식이지만, 아카이브를 형성 및 해제를 위한 형식이 다르다. 아래 형식을 통해 확인하자.

  • 아카이브의 형성

    $ tar cvf name.tar <디렉토리>
    

디렉토리의 모든 구조와 내용을 유지하는 name.tar라는 이름의 아카이브를 형성

  • 아카이브의 해제

    $ tar xvf name.tar
    

name.tar 아카이브를 디렉토리/파일 구조로 해제

예제 #

예제를 통해 tar 명령어의 사용법을 알아보자.

예제 1 - 확장자가 .tar 인 경우 #

아카이브 형성 #

a 디렉토리와 그 하위 모든 구조를 a.tar 이름으로 아카이브를 형성한다.

$ tar cvf a.tar a
a/
a/b/
a/b/c.txt

$ ls
a a.tar

아카이브 해제 #

a.tar 이름의 아카이브 해제

$ tar xvf a.tar
a/
a/b/
a/b/c.txt

$ ls
a a.tar

예제 2 - 확장자가 .tar.gz 인 경우 #

아카이브 형성 및 압축 #

a 디렉토리와 그 하위 모든 구조를 a.tar 이름으로 아카이브를 형성하고, gzip으로 압축한다.

$ tar zcvf a.tar.gz a
a/
a/b/
a/b/c.txt

$ ls
a a.tar.gz

아카이브 및 압축 해제 #

a.tar.gz 파일의 압축을 해제하고(gunzip), 아카이브를 해제한다.

$ tar zxvf a.tar.gz
a/
a/b/
a/b/c.txt

$ ls
a a.tar.gz

Suggested Pages #

0.0.1_20140628_0