기계적 인조 인간

Linux의 Tar 명령 (아카이브 작성 및 추출)

The Refractive Thinker Vol. I: Chapter 10 Dr. Cheryl Lentz F

The Refractive Thinker Vol. I: Chapter 10 Dr. Cheryl Lentz F

차례:

Anonim

tar 명령은 파일 그룹을 아카이브로 변환하여 tar 아카이브를 작성하는 데 사용됩니다. 또한 tar 아카이브를 추출하고, 아카이브에 포함 된 파일 목록을 표시하고, 기존 아카이브에 추가 파일을 추가하고, 다양한 다른 종류의 작업을 수행 할 수 있습니다.

Tar는 원래 자기 테이프에 파일을 저장하기 위해 아카이브를 작성하도록 설계 되었기 때문에 이름이 " T ape AR chive"입니다.

이 학습서에서는 tar 명령을 사용하여 가장 일반적인 tar 옵션에 대한 실제 예제와 자세한 설명을 통해 tar 아카이브를 추출, 나열 및 작성하는 방법을 보여줍니다.

타르 명령 구문

tar에는 BSD tar와 GNU tar의 두 가지 버전이 있으며 기능상의 차이점이 있습니다. 대부분의 Linux 시스템에는 기본적으로 GNU tar가 사전 설치되어 있습니다.

tar 명령의 일반적인 구문은 다음과 같습니다.

tar

  • OPERATION -하나의 연산 인수 만 허용되고 필요합니다. 가장 자주 사용되는 작업은 다음과 같습니다.
    • --create ( -c )-새 tar 아카이브를 만듭니다. --extract ( -x ) – 아카이브에서 전체 아카이브 또는 하나 이상의 파일을 추출합니다. --list ( -t )-아카이브에 포함 된 파일 목록을 표시합니다
    OPTIONS -가장 자주 사용되는 작업은 다음과 같습니다.
    • --verbose ( -v )-tar 명령으로 처리중인 파일을 표시합니다. --file=archive=name ( -f archive-name )-아카이브 파일 이름을 지정합니다.
    ARCHIVE_NAME 아카이브 이름입니다. FILE_NAME(s) -아카이브에서 추출 할 공백으로 구분 된 파일 이름 목록입니다. 제공되지 않으면 전체 아카이브가 추출됩니다.

tar 명령을 실행할 때 긴 형식 또는 짧은 형식의 tar 작업 및 옵션을 사용할 수 있습니다. 긴 양식은 더 읽기 쉽고 짧은 양식은 입력하기가 더 빠릅니다. 긴 형식의 옵션 앞에는 이중 대시 ( -- )가 붙습니다. 짧은 형식 옵션에는 접두사 ( - )가 접두사로 생략 될 수 있습니다.

타르 아카이브 만들기

Tar은 gzip , bzip2 , lzip , lzma , lzop , xz compress 와 같은 광범위한 압축 프로그램을 지원합니다. 압축 된 tar 아카이브를 작성할 때 압축기 접미 부를 아카이브 파일 이름에 추가하는 것은 허용되는 규칙입니다. 예를 들어, 아카이브가 gzip 으로 압축 된 경우 이름은 archive.tar.gz 여야합니다.

tar 아카이브를 작성하려면 -c 옵션과 -f 및 아카이브 이름을 사용하십시오.

예를 들어, file1 , file2 , file3 파일에서 archive.tar 라는 아카이브를 작성하려면 다음 명령을 실행하십시오.

tar -cf archive.tar file1 file2 file3

다음은 long 형식 옵션을 사용하는 해당 명령입니다.

tar --create --file=archive.tar file1 file2 file3

하나 이상의 디렉토리 또는 파일 컨텐츠에서 아카이브를 작성할 수 있습니다. --no-recursion 옵션을 지정하지 않으면 기본적으로 디렉토리는 재귀 적으로 아카이브됩니다.

다음 예제는 /home/user 디렉토리의 user_backup.tar 라는 아카이브를 작성합니다.

tar -cf backup.tar /home/user

처리중인 파일을 보려면 -v 옵션을 사용하십시오.

Tar Gz 아카이브 작성

Gzip은 tar 파일을 압축하는 데 가장 널리 사용되는 알고리즘입니다. gzip으로 tar 아카이브를 압축 할 때 아카이브 이름은 tar.gz 또는 tgz 끝나야합니다.

-z 옵션은 tar가 gzip 알고리즘을 사용하여 아카이브를 압축하도록 지시합니다. 예를 들어, 지정된 파일에서 tar.gz 아카이브를 작성하려면 다음 명령을 사용하십시오.

tar -czf archive.tar.gz file1 file2

Tar Bz2 아카이브 작성

tar 파일을 압축하는 또 다른 일반적인 알고리즘은 bzip2입니다. bzip2로 tar 아카이브를 압축 할 때 아카이브 이름은 tar.bz2 또는 tbz 끝나야합니다.

-j 옵션이 지정되면 tar는 bzip2 알고리즘을 사용하여 아카이브를 압축합니다. 다음 명령은 주어진 파일에서 tar.bz2 아카이브를 만듭니다.

tar -cjf archive.tar.bz2 file1 file2

타르 아카이브 나열

--list ( -t ) 옵션과 함께 사용하면 tar 명령은 tar 아카이브의 컨텐츠를 추출하지 않고 나열합니다. 다음 명령은 archive.tar 파일의 내용을 나열합니다.

tar -tf archive.tar 출력은 아카이브에있는 모든 파일의 이름을 나열합니다.

file1 file2 file3

파일 소유자, 파일 크기, 타임 스탬프와 같은 자세한 정보를 얻으려면 --verbose ( -v ) 옵션을 사용하십시오.

tar -tvf archive.tar

-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3

타르 아카이브 추출

Linux에서 아카이브 된 파일의 대부분은 tar 또는 tar.gz 형식을 사용하여 아카이브되고 압축됩니다. 명령 행에서 이러한 파일을 추출하는 방법을 아는 것이 중요합니다.

tar 아카이브를 추출하려면 --extract ( -x ) 옵션과 아카이브 이름을 사용하십시오.

tar -xf archive.tar

추출되는 파일의 이름을 인쇄하기 위해 -v 옵션을 추가하는 것도 일반적입니다.

tar -xvf archive.tar

다른 디렉토리에서 Tar 아카이브 추출

기본적으로 tar는 현재 작업 디렉토리에서 아카이브 내용을 추출합니다. --directory ( -C )를 사용하여 특정 디렉토리에서 아카이브 파일을 추출하십시오.

예를 들어, 아카이브 내용을 /opt/files 디렉토리로 추출하려면 다음을 사용할 수 있습니다.

tar -xf archive.tar -C /opt/files

Tar Gz 및 Tar Bz2 아카이브 추출

tar.gz 또는 tar.bz2 와 같은 압축 아카이브를 추출 할 때는 압축 해제 옵션을 지정할 필요가 없습니다. 이 명령은 tar 아카이브를 추출 할 때와 동일합니다.

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

Tar 아카이브에서 특정 파일 추출

때로는 전체 아카이브를 추출하는 대신 몇 개의 파일 만 추출해야 할 수도 있습니다.

tar 아카이브에서 특정 파일을 추출하려면 아카이브 이름 뒤에 추출 할 공백으로 구분 된 파일 이름 목록을 추가하십시오.

tar -xf archive.tar file1 file2

파일을 추출 할 때 --list ( -t )로 인쇄 된대로 경로를 포함하여 정확한 이름을 제공해야합니다.

아카이브에서 하나 이상의 디렉토리를 추출하는 것은 파일을 추출하는 것과 같습니다.

tar -xf archive.tar dir1 dir2

tar -xf archive.tar README

tar: README: Not found in archive tar: Exiting with failure status due to previous errors

와일드 카드를 사용하여 Tar 아카이브에서 파일 추출

와일드 카드 패턴을 기반으로 아카이브에서 파일을 추출하려면 --wildcards 스위치를 사용하고 패턴을 인용하여 쉘이 해석하지 못하게하십시오.

예를 들어, 이름이 .js (Javascript 파일)로 끝나는 파일을 추출하려면 다음을 사용할 수 있습니다.

tar -xf archive.tar --wildcards '*.js'

기존 Tar 아카이브에 파일 추가

기존 tar 아카이브에 파일 또는 디렉토리를 추가하려면 --append ( -r ) 조작을 사용하십시오.

예를 들어, newfile 이라는 파일을 archive.tar에 추가하려면 다음을 실행하십시오.

tar -rvf archive.tar newfile

Tar 아카이브에서 파일 제거

아카이브에서 파일을 제거하려면 --delete 작업을 사용하십시오.

다음 예제는 archive.tar에서 file1 파일을 제거하는 방법을 보여줍니다.

tar --delete -f archive.tar file1

결론

tar 명령의 가장 일반적인 용도는 tar 아카이브를 작성하고 추출하는 것입니다. 아카이브를 추출 할 때 tar -xf 명령 다음에 아카이브 이름을 사용하고 새 이름을 작성하려면 tar -czf 다음에 아카이브 이름과 아카이브에 추가 할 파일 및 디렉토리를 사용하십시오.

tar 명령에 대한 자세한 내용은 Gnu tar 설명서 페이지를 참조하십시오.

타르 터미널