it-swarm-ko.tech

유닉스 커맨드 라인에서 압축 / 압축 해제는 어떻게합니까?

명령 행에서 Zip 아카이브를 작성하고 추출하려면 어떻게해야합니까?

570
joachim

일반적으로 tar를 사용하여 압축되지 않은 아카이브와 gzip 또는 bzip2 해당 아카이브를 압축합니다. 해당 gunzipbunzip2 명령을 사용하여 해당 아카이브를 압축 해제하거나 tar 명령에서 플래그를 사용하여 압축 해제를 수행 할 수 있습니다.

Zip 파일 형식 을 구체적으로 언급하는 경우 Zipunzip 명령을 사용하면됩니다.

압축하려면

Zip squash.Zip file1 file2 file3

또는 디렉토리를 압축

Zip -r squash.Zip dir1

압축을 풀려면

unzip squash.Zip

이것은 현재 작업 디렉토리에서 압축을 풉니 다.

698
Justin Ethier

실제로 유닉스 파생물에서 압축 및 압축 해제하는 다양한 방법이 vast가 있으므로 구체적인가 아니라 일반적인 의미에서 "Zip"을 의미한다고 가정하겠습니다. 파일 형식.

GNU tar 프로그램을 사용하여 파일을 압축 형식으로 압축 할 수 있습니다.

tar -zcvf myfile.tgz .

현재 디렉토리를 수행합니다. 다른 것을 원하면 .를 다른 파일 이름으로 바꾸십시오.

해당 파일을 압축 해제하려면 다음을 사용하십시오.

tar -zxvf myfile.tgz

물론 압축을 수행하고 파일을 하나로 결합 할 수있는 tar가 있다고 가정합니다.

그렇지 않은 경우 압축에 tar cvf 다음에 gzip (사용 가능한 경우 다시)을 사용하고 gunzip 뒤에 tar xvf를 사용할 수 있습니다.


Zip 형식 파일을 구체적으로 처리하려면 7Zip를 다운로드하여 사용하는 것이 좋습니다. Zip 형식 파일을 포함하여 거대한 다양한 파일 형식을 인식합니다.

68
user14408

Zip 및 unzip 패키지가 설치되어 있지 않고 Java가있는 경우 jar를 사용하여 압축을 풀 수 있습니다.

jar -xf file.Zip
33
mlocke

다양한 운영 체제 용 파일을 배포 할 때는 7-Zip 을 권장합니다.

일반적으로 패키지 p7Zip, 당신은 7z7za 명령으로 자신 만의 7z 아카이브를 만들 수 있습니다.

7za은 또한 표준 ( pkzip ) Zip 아카이브를 압축 해제 할 수 있으며 -tzip 스위치).

압축 :

7za a archive.7z file1 file2 directory/

압축 해제 :

7za x archive.7z

또한 -sfx 스위치 :

7za a -sfx archive.exe files1 file2 dir

Windows 사용자가 7z 아카이브를 열 수없는 경우이 방법을 사용하는 것이 좋습니다 (- PeaZip ).

Tarball과 동일한 압축 알고리즘을 사용하려면 -Jtar 스위치 :

tar cJf archive.tar.xz file1 file2 dir

xz UNIX 도구로 압축에 LZMA2를 사용하지만 gz, bz2 등이 작동합니다. 심지어 필터로도 작동합니다.

7z는 UNIX에서 전체 파일 시스템 정보로 아카이브를 작성하지 않으므로 7z를 사용하기 전에 tar를 사용해야합니다 (하지만 7z는 tar 파일에 대한 다른 정보를 저장하므로 권장합니다) xz를 사용하도록 설계됨) :

tar cf - file1 file2 dir | 7za z -si archive.tar.7z
30
polemon
unzip <filename>

Zip -r archive.Zip <filename> [filename]

이러한 명령이 패키지 관리자를 통해 설치되어 있는지 확인해야합니다. 커맨드 라인에서 다른 것을 사용하는 것보다 어렵지 않습니다. tar로 아카이브를 만드는 것보다 확실히 간단합니다.

23
Starfish

BSD Tar도 이것을 할 수 있습니다

bsdtar -a -c -f sunday.Zip sunday.jpg

또는:

bsdtar -x -f sunday.Zip
4
Steven Penny

가장 표준적인 답변은 pax 이며, cpiotar 보다 권장됩니다. .

cpio 및 POSIX tar와 달리 GNU tar, pax는 파일을 아카이브하고 압축 할 수 있습니다. 이 동작은 Zip 와 다르며, 이는 각 파일을 아카이브에 넣기 전에 압축합니다.

3
mouviciel

여기에는 추출 만 포함됩니다.

이를 위해 dtrx 를 사용하기 시작했습니다.

그것의 요점은 복잡성을 제거하는 것입니다. 따라서 모든 아카이브를 전달하고 수행해야 할 작업을 파악합니다. Zip, tar, gz ... 사용법은 항상 동일합니다. dtrx archive.Zip. 몇 가지 질문을하면 끝입니다.

dtrx는 대부분의 리포지토리에서 사용할 수 있으므로 apt | yum 설치할 수 있습니다.

2
JackLeo

수정 된 파일을 모두 다른 샌드 박스 작업 디렉토리에 복사하거나 일부 변경 사항을 취소하고 싶기 때문에 잠시 동안 보존하기 위해 작업 디렉토리에 수정 된 파일을 압축하려고 시도하는 경우가 종종 있습니다.

이 경우 수정 된 파일 목록을 임시 파일로 복사하고 Zip 옵션을 [email protected].

Foo.h, Bar.cc 및 TestBar.cc 파일을 수정했다고 가정 해 봅시다.

내용이 다음과 같은 modified-files.txt라는 파일을 생성한다고 가정 해 보겠습니다.

Foo.h
Bar.cc
TestBar.cc

해당 파일을 압축하기 위해 다음 명령을 실행합니다.

cat modified-files.txt | Zip modified-files.Zip [email protected]
1
R Sahu