Linux에서 tar 명령을 사용하여 파일을 압축하고 추출하는 방법
- Chris Hoffman
@chrisbhoffman
- 2016 년 4 월 10 일 , 6:40 am EDT
Linux의 tar 명령은 종종 “tarballs”라고도하는 .tar.gz 또는 .tgz 아카이브 파일을 만드는 데 사용됩니다. 이 명령에는 많은 옵션이 있지만 tar로 아카이브를 빠르게 만들려면 몇 글자 만 기억하면됩니다. tar 명령은 결과 아카이브도 추출 할 수 있습니다.
Linux에 포함 된 GNU tar 명령 배포판에는 통합 압축 기능이 있습니다. .tar 아카이브를 만든 다음 단일 명령으로 gzip 또는 bzip2 압축으로 압축 할 수 있습니다. 따라서 결과 파일이 .tar.gz 파일 또는 .tar.bz2 파일이됩니다.
전체 디렉토리 또는 단일 파일 압축
다음 명령을 사용하여 Linux에서 전체 디렉토리 또는 단일 파일을 압축합니다. 지정한 디렉토리 내의 다른 모든 디렉토리도 압축합니다. 즉, , 재귀 적으로 작동합니다.
tar -czvf name-of-archive.tar.gz /path/to/directory-or-file
이 스위치가 실제로 의미하는 바는 다음과 같습니다.
- -c : 아카이브를 만듭니다.
li>
- -z : gzip을 사용하여 아카이브를 압축합니다.
- -v : “상세”모드라고도하는 아카이브를 만드는 동안 터미널에 진행률을 표시합니다. v는 이러한 명령에서 항상 선택 사항이지만 유용합니다.
- -f : 아카이브의 파일 이름을 지정할 수 있습니다.
현재 디렉토리에 “stuff”라는 디렉토리가 있고이를 archive.tar.gz라는 파일에 저장한다고 가정 해 보겠습니다. 다음 명령을 실행합니다.
tar -czvf archive.tar.gz stuff
또는 현재 시스템의 / usr / local / something에 디렉토리가 있고이를 archive.tar.gz라는 파일로 압축하려고한다고 가정 해 보겠습니다. 다음 명령을 실행합니다. :
tar -czvf archive.tar.gz /usr/local/something
여러 디렉터리 또는 파일을 한 번에 압축
관련 : Linux 터미널에서 파일을 관리하는 방법 : 필요한 11 가지 명령 알아 두세요
tar는 단일 디렉토리를 압축하는 데 자주 사용되지만 여러 디렉토리, 여러 개별 파일 또는 둘 다를 압축하는 데 사용할 수도 있습니다. 단일 디렉토리 대신 파일 또는 디렉토리 목록을 제공하면됩니다. 예를 들어, / home / ubuntu / Do를 압축하고 싶다고 가정 해 보겠습니다. wnloads 디렉토리, / usr / local / stuff 디렉토리 및 /home/ubuntu/Documents/notes.txt 파일. 다음 명령을 실행하기 만하면됩니다.
tar -czvf archive.tar.gz /home/ubuntu/Downloads /usr/local/stuff /home/ubuntu/Documents/notes.txt
백업 할 디렉토리 나 파일을 목록에 추가하세요.
제외 디렉토리 및 파일
경우에 따라 전체 디렉토리를 압축하지만 특정 파일 및 디렉토리를 포함하지 않을 수 있습니다. 제외하려는 각 디렉토리 또는 파일에 --exclude
스위치를 추가하면됩니다.
예를 들어 / home / ubuntu를 압축하고 싶지만 / home / ubuntu / Downloads 및 /home/ubuntu/.cache 디렉토리는 압축하지 않습니다. 방법은 다음과 같습니다.
tar -czvf archive.tar.gz /home/ubuntu --exclude=/home/ubuntu/Downloads --exclude=/home/ubuntu/.cache
--exclude
스위치는 매우 강력합니다. 디렉터리 및 파일의 이름을 사용하지 않고 실제로 패턴을 허용합니다. 그것으로 할 수있는 일이 훨씬 더 많습니다. 예를 들어 다음 명령을 사용하여 전체 디렉토리를 보관하고 모든 .mp4 파일을 제외 할 수 있습니다.
tar -czvf archive.tar.gz /home/ubuntu --exclude=*.mp4
대신 bzip2 압축 사용
gzip 압축은 .tar.gz 또는 .tgz 파일을 만드는 데 가장 자주 사용되지만 tar는 bzip2 압축도 지원합니다. 이를 통해 bzip2 압축 파일 (종종 .tar.bz2, .tar.bz 또는 .tbz 파일)을 만들 수 있습니다. 이렇게하려면 여기에있는 명령에서 gzip의 -z를 bzip2의 경우 -j로 바꾸십시오.
Gzip은 더 빠르지 만 일반적으로 압축률이 약간 낮으므로 약간 더 큰 파일이 생깁니다. Bzip2는 느리지 만 조금 더 압축되므로 파일 크기가 약간 작아집니다. Gzip은 기본적으로 gzip 지원을 포함하지만 bzip2 지원은 포함하지 않는 일부 제거 된 Linux 시스템에서 더 일반적입니다. 일반적으로 gzip과 bzip2는 거의 동일하며 둘 다 비슷하게 작동합니다.
예를 들어, stuff 디렉토리를 압축하기 위해 제공 한 첫 번째 예 대신 다음 명령을 실행합니다.
tar -cjvf archive.tar.bz2 stuff
아카이브 추출
아카이브가 있으면 tar 명령으로 압축을 풀 수 있습니다. 다음 명령은 archive.tar.gz의 내용을 현재 디렉토리에 추출합니다.
tar -xzvf archive.tar.gz
위에서 사용한 아카이브 생성 명령과 동일합니다. -x
스위치는 -c
스위치를 대체합니다. 아카이브를 생성하는 대신 압축을 풀도록 지정합니다.
아카이브의 내용을 특정 디렉토리로 추출 할 수 있습니다. 명령 끝에 -C
스위치를 추가하면됩니다. 예를 들어 다음 명령은 archive.tar.gz 파일의 내용을 / tmp 디렉토리로 추출합니다.
tar -xzvf archive.tar.gz -C /tmp
파일이 bzip2 압축 파일 인 경우 위 명령의 “z”를 “j”로 바꿉니다.
이것은 tar 명령의 가능한 가장 간단한 사용법입니다. 이 명령에는 많은 추가 옵션이 포함되어 있으므로 여기에 모두 나열 할 수는 없습니다. 자세한 내용은. 쉘에서 info tar 명령을 실행하여 tar 명령의 자세한 정보 페이지를보십시오. 완료되면 q 키를 눌러 정보 페이지를 종료합니다. 온라인에서 tar 설명서를 읽을 수도 있습니다.
그래픽 Linux 데스크톱을 사용하는 경우 데스크톱에 포함 된 파일 압축 유틸리티 또는 파일 관리자를 사용하여 .tar 파일을 만들거나 추출 할 수도 있습니다. Windows에서 무료 7-Zip 유틸리티를 사용하여 .tar 아카이브를 추출하고 만들 수 있습니다.
Chris Hoffman은 How-To Geek 편집장입니다. 그는 거의 10 년 동안 기술에 대해 저술했으며 2 년 동안 PCWorld 칼럼니스트였습니다. Chris는 The New York Times에 저술했으며 Miami의 NBC 6와 같은 TV 방송국에서 기술 전문가로 인터뷰를했으며 그의 작업을 BBC와 같은 뉴스 매체. 2011 년부터 Chris는 5 억 번 이상 읽은 2,000 개 이상의 기사를 썼습니다. 바로 여기 How-To Geek에 있습니다. 전체 약력 읽기 “