폴더를 'gzip'명령?


66

나는 Mac 명령 프롬프트에 익숙하지 않습니다. Mac OS X에서 폴더의 gzip을 어떻게 생성합니까? 폴더의 gzip을 만들려면 먼저 'tar'하고 'gzip'해야한다고 몇 사람들에게 들었습니다. 이 올바른지?


1
이것은 프로그래밍 질문이 아니십니까? 게시물에 태그가 지정 objective-c되었지만 명령 줄에 대해 질문하고 있습니다.
rakuo15

답변:


130

Tar은 아카이브 도구이고 gzip은 압축 도구입니다. 전체 디렉토리를 압축하려면 먼저 단일 파일로 아카이브해야합니다. 그게 직업이 타르입니다. 그런 다음 보관 된 파일을 압축합니다. 적절한 옵션을 사용하여 단일 tar 명령으로 두 작업을 모두 수행 할 수 있습니다.

tar -czf folder_name.tar.gz folder_name /

tar 아카이브를 만들지 않으려면 (단일 파일 만 압축하고 싶을 수도 있음) gzip 명령을 직접 사용할 수 있습니다.

gzip file.txt

file.txt.gz라는 압축 파일을 생성합니다


30
그것은 어떤 옵션은 언급 할 가치가 -czftar:위한 것입니다 c, 당신은 tar 아카이브를 생성 할 것을 나타냅니다 z적용 gzip중간 tar 아카이브에, 그리고 f이후의 최종 파일 이름입니다 folder_name.tar.gz.
fideli

13
경고 : gzip file.txt원본 파일을 대체합니다.
Zoltán

6
@ Zoltán gzip -k file.txt입력 파일을 "유지"(삭제하지 않음)하는 데 사용합니다.
thohl

13

"gzip in Mac"을 검색 할 때 여전히이 질문을하는 사람이 있다면 다른 사람에게 도움이 될만한 안내서를 작성했습니다. 여기 간다:

압축

가장 기본적인 명령은 파일을 압축 한 filename.ext다음 filename.ext.gz같은 디렉토리에있는 파일 로 대체합니다 .

gzip filename.ext

원본 파일을 잃지 않으려면 출력을 gzip -c파일 로 파이프해야 합니다.

gzip -c filename.ext > anotherfile.gz

표준 입력에서 압축 할 수 있으므로 다른 명령의 출력을 압축 할 수도 있습니다.

cat filename.ext | gzip > anotherfile.gz

OS X에는 compressuncompress명령 도 함께 제공됩니다 . 압축 프로세스 후에 파일이 커지면 파일을 압축하지 않기 때문에 "스마트 한"gzip을 만듭니다. 다음 명령은 대체 filename.extfilename.ext.Z같은 디렉토리입니다.

compress filename.ext

압축 해제

파일을 압축되지 않은 자연 상태로 복원하려면 gzip 또는 기타 래퍼를 사용할 수 있습니다. gzip의 압축 해제 모드는 -d플래그 와 함께 호출됩니다 . 이 모드는 파일 filename.ext.gzfilename.ext같은 디렉토리에서 바꿉니다. gunzip같은 기능을 하는 바로 가기도 있습니다 .

gzip -d filename.ext.gz
gunzip filename.ext.gz

압축 해제 된 파일을 표준 출력으로 파이프하여 다른 파일로 저장할 수도 있습니다.

gzip -cd filename.ext.gz > anotherfile
gunzip -c filename.ext.gz > anotherfile

gzip의 내용을 표준 출력으로 읽는 또 다른 빠른 방법은 zcat기본적으로 호출과 동일 gzip -cd하지만 여러 파일을 호출하여 cat명령이 텍스트 파일을 연결하는 것과 같은 방식으로 연결할 수 있습니다. 유일한 단점은 파일이 작동하려면 파일에 .Z접미사를 붙여야 한다는 것입니다.

zcat filename.ext.Z
zcat file_a.Z file_b.Z file_c.Z

그러나 두려워하지 마십시오! zcat표준 출력에서 ​​압축을 풀 수 있기 때문에 여전히 유용합니다. 따라서 기본적으로 파일을 zcat으로 파이프하여 터미널 창에서 압축 해제 할 수 있습니다.

cat filename.ext.gz | zcat

이것은 파일의 내용을 정말 빠르게 확인해야 할 때 매우 유용하며 zcat의 출력을 파일에 쉽게 저장할 수 있습니다.

cat filename.ext.gz | zcat > anotherfile

uncompress래퍼처럼 작동 gzip -cd하지만 당신 만 복원 할 파일 이름을 지정해야합니다 있도록 .Z 확장자를 가진 파일이 현재 디렉토리에 장착하는 것이 보이지만 당신이 .Z 확장자를 호출하는 경우가로, 괜찮아 프로그램은이를 무시합니다.

compress filename.ext
uncompress filename.ext

내 가이드가 도움이 되길 바랍니다. :)


4

MacOS X는 Unix이므로 작동해야합니다 (GNU / Linux에서 작동합니다)

tar czvf compress.tar.gz 폴더

3

예, 디렉토리를 먼저 tar했습니다. tar 명령은 다음을 모두 수행 할 수 있습니다.

tar -czf archiv.tar.gz mydir/

보관함을 추출하십시오.

tar -xzf archiv.tar.gz

3

@taskinoor의 답변에 추가하려면 : 단일 파일 버전을 사용하는 경우 일명

gzip file.txt

원본 파일 (file.txt)이 제거되고 file.txt.gz 만 남게됩니다.

나는 이것을 주석으로 넣을 것이지만 그것을 할 충분한 업장이 없다 : =)


1
gzip --keep file.txt원본을 유지하고 만듭니다 file.txt.gz. 참조하십시오 gzip --help.
Blaise

1

예, 맞습니다. gzip파일 만 압축 할 수 있습니다. tar더 사용하여 압축 할 수있는 하나의 파일로 디렉토리 내용을 인코딩 gzip, bzip2, lzma다른 사람 또는 아무것도.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.