Linux / 명령어 / gzip - 파일을 gzip 형식으로 압축하기
gzip은 파일 데이터를 .gz 형식으로 압축합니다. 여러 파일을 한 아카이브로 묶지는 않으며, 일반적으로 원본 파일을 압축 파일로 바꿉니다.
gzip 명령어란?
압축할 파일을 지정하면 보통 파일.gz가 만들어지고 원본 파일은 제거됩니다. 원본을 보존하려면 -k를 사용하거나 -c로 표준 출력에 보낸 뒤 별도 파일에 저장합니다. 디렉터리 구조를 보존하며 함께 압축하려면 먼저 tar로 묶는 방법이 적합합니다.
기본 문법
gzip [옵션] [파일 ...]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man gzip으로 현재 시스템의 설명을 확인하세요.
사용 예제
원본을 유지하며 압축
-k로 원본을 남기고 새 .gz 파일을 만듭니다.
gzip -k report.log
압축 결과를 다른 이름으로 저장
-c는 원본을 바꾸지 않고 압축 데이터를 표준 출력으로 보냅니다. 출력 파일이 기존에 없는지 확인하세요.
gzip -c report.log > report-copy.log.gz
압축 파일 무결성 검사
파일 내용을 꺼내지 않고 gzip 스트림 오류를 검사합니다.
gzip -t report.log.gz
압축 뒤 원본 파일이 남는지 확인하기
gzip 파일은 기본적으로 원본을 .gz 파일로 대체합니다. 원본도 남겨야 한다면 GNU gzip의 -k를 사용합니다.
printf 'hello\n' > note.txt gzip -k note.txt ls note.txt*
예시 출력:
note.txt note.txt.gz
압축 성공 자체는 보통 화면에 내용을 출력하지 않습니다. gzip -t note.txt.gz로 압축 파일 구조를 검사할 수 있지만 원본과 내용이 같다는 사실까지 보장하지는 않습니다. 여러 파일을 하나로 묶고 싶다면 먼저 tar를 사용한 뒤 gzip을 적용하세요.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
-k |
압축 후 입력 파일을 유지합니다. |
-c |
결과를 표준 출력으로 보냅니다. |
-t |
압축 데이터의 무결성을 검사합니다. |
-1 ... -9 |
속도 우선부터 압축률 우선까지 수준을 고릅니다. |
-v |
압축률 등 처리 정보를 표시합니다. |
사용할 때 주의할 점
기본 실행은 원본 파일을 대체하므로 원본을 유지해야 하는 작업에서는 -k를 쓰세요. 여러 파일을 인수로 주어도 하나의 .gz로 묶이지 않습니다. gzip 압축은 암호화가 아니므로 비밀 자료 보호 용도로 사용해서는 안 됩니다.
자주 묻는 질문
gzip으로 디렉터리 전체를 하나의 파일로 만들 수 있나요?
gzip 자체는 디렉터리 구조를 담는 아카이버가 아닙니다. tar -czf backup.tar.gz directory/처럼 tar와 함께 사용하세요.
공식 문서
옵션의 정확한 동작과 구현별 차이는 gzip 관련 공식 문서에서 확인할 수 있습니다.









