강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

gzip/gunzip (압축및 압축해제를 한다.)

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

gzip / gunzip

압축을 하거나(gzip) 해제(gunzip)한다.
compress이후에 압축유틸리티로서 가장 많이 사용되고 있는 현재 리눅스시스템에서 가장 일반적인 압축유틸리티이다.
tar와 함께 압축과 해제하는 방법으로 흔히 사용된다.

사용형식

       gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ...  ]
       gunzip [ -acfhlLnNrtvV ] [-S suffix] [ name ...  ]
       zcat [ -fhLV ] [ name ...  ]


사용예 #1

하나의 파일을 압축해 보자.
textfile1이라는 파일을 gzip으로 압축하려면 "gzip 파일명"과 같이 간단히 하면된다.

[root@host3 dir]# ls -l
합계 17540
-rwx-----x    1 bible1   bible2    4314004  9월 24 20:12 textfile1
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#
[root@host3 dir]# gzip textfile1
[root@host3 dir]#
[root@host3 dir]# ls -l
합계 13644
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#

위의 예는 textfile1을 gzip으로 압축을 한 것이다.
아래는 압축된 파일을 확인한 것이다.

압축된 후의 파일명이 변경(.gz가 붙은것)된 것과 파일의 용량이 얼마나 축소되었는가를 (4314004바이트 -> 332676바이트) 확인해 보기 바란다.


사용예 #2

이번에는 이렇게 압축된 압축파일을 압축해제를 해보도록 하자.
아래의 예는 위의 예에서 압축했던 textfile1.gz라는 파일을 압축해제해 보겠다.

[root@host3 dir]# ls -l
합계 13644
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#
[root@host3 dir]# gunzip textfile1.gz
[root@host3 dir]#
[root@host3 dir]# ls -l
합계 17540
-rwx-----x    1 bible1   bible2    4314004  9월 24 20:12 textfile1
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#

위와 같이 textfile1.gz가 압축해제되어 압축전 원래파일인 textfile1이 되었다.
이렇게 압축해제된 파일은 다음과 같은 사항을 확인해 보아야한다.
 . 압축전 원본파일과의 파일사이즈비교
 . 압축전 원본파일과의 파일소유주 비교
 . 압축전 원본파일과의 파일소유그룹 비교
 . 압축전 원본파일과의 파일퍼미션 비교
 . 압축전 원본파일과의 파일액세스 날짜시간 비교

압축해제 된 후에 위의 사항을 확인해 보아야 압축효율과 원본파일과의 정상유무를 확인할 수 있다.

위에서도 설명을 드렸지만 위의 압축해제 명령어인 "gunzip textfile1.gz"는 "gzip -d textfile1.gz"와 동일하다.


사용예 #3

이번에는 동시에 2개이상의 파일을 압축하는 방법을 알아보자.
동시에 2개이상의 압축을 하려면 "gzip *"이라고만 하면 된다.
이렇게 하면 현재 디렉토리에 존재하는 모든 파일을 개별적으로 압축해 준다.
다음의 예를 보자.

[root@host3 dir]# ls -l
합계 17540
-rwx-----x    1 bible1   bible2    4314004  9월 24 20:12 textfile1
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#
[root@host3 dir]# gzip *
[root@host3 dir]#
[root@host3 dir]# ls -l
합계 1624
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2    1317583  9월 24 20:12 textfile3.gz
[root@host3 dir]#

위의 예와 같이 "gzip *"이라고 하면 현재 디렉토리에 존재하는 모든 파일을 개별적으로 압축하게 된다.
위의 예에서는 두개의 파일이 존재하고 있었으므로 두개의 파일을 압축하였다.

앞의 예에서도 확인해 보았듯이 압축후에는 원본파일과의 파일사이즈및 퍼미션등을 확인해 보기 바란다.


사용예 #4

이번에는 이렇게 압축된 두개이상의 파일을 동시에 압축해제하는 예를 보도록 하자.
위에서 압축한 두개의 파일을 모두 압축해제하였다.

[root@host3 dir]# ls -l
합계 1624
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2    1317583  9월 24 20:12 textfile3.gz
[root@host3 dir]#
[root@host3 dir]# gunzip *
[root@host3 dir]#
[root@host3 dir]# ls -l
합계 17540
-rwx-----x    1 bible1   bible2    4314004  9월 24 20:12 textfile1
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#

위의 예와 같이 여러개의 압축파일을 동시에 압축해제하려면 "gunzip *"으로 하면된다.


사용예 #5

현재 사용중인 파일이 있어서 압축되지않는 다는 에러메시지를 만난다면 다음 예와 같이 -f 옵션을 사용해보기 바란다.
현재 사용중인 파일이라도 강제적인 압축을 해주는 옵션이다.

[root@host3 dir]# ls -l
합계 17540
-rwx-----x    1 bible1   bible2    4314004  9월 24 20:12 textfile1
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#
[root@host3 dir]# gzip -f textfile1
[root@host3 dir]#
[root@host3 dir]# ls -l
합계 13644
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2   13610464  9월 24 20:12 textfile3
[root@host3 dir]#


사용예 #6

다음은 압축후에 압축된 내용과 압축효율등을 확인할 수 있는 예를 들어보자.

[root@host3 dir]# ls -l
합계 1624
-rwx-----x    1 bible1   bible2     332676  9월 24 20:12 textfile1.gz
-rwx-----x    1 bible1   bible2    1317583  9월 24 20:12 textfile3.gz
[root@host3 dir]#
[root@host3 dir]# gzip -l *
         compressed        uncompressed  ratio uncompressed_name
             332676             4314004  92.3% textfile1
            1317583            13610464  90.3% textfile3
            1650259            17924468  90.8% (totals)
[root@host3 dir]#

위의 예는 압축된 두개의 파일에 대하여 압축내용에 대한 확인을 한 것이다.

gzip에서 -l옵션은 사용하면 위에서 확인한 것과 같이 다음고 같은 내용의 확인이 가능하다.

 . compressed : 압축된 후의 용량
 . uncompressed : 압축되기전의 용량
 . ratio : 압축효율
 . uncompressed_name : 압축하기전의 파일명

위와 같은 내용의 확인이 가능하다.


이상과 같이 gzip에 대한 설명을 모두 마친다.
위의 예들은 모두 실제예들이므로 직접 따라해보면서 공부해 보시길....


저작권:수퍼유저코리아(www.superuser.co.kr), 무단 재배포및 복사를 금합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,039 명
  • 현재 강좌수 :  35,848 개
  • 현재 접속자 :  94 명