Linux에서는 파일을 압축 및 압축 해제하는 데 gzip 명령이 사용됩니다. 이 명령으로 압축된 새 파일의 확장자는 일반적으로 ".gz"로 표시되며 구문은 "gzip [옵션] 소스 파일"입니다. 구문의 소스 파일은 압축 작업을 수행할 때 일반 파일을 참조하고, 압축 해제 작업을 수행할 때는 압축 파일을 참조합니다. gzip 명령은 디렉터리가 아닌 파일을 압축하는 데에만 사용할 수 있습니다. 디렉터리를 지정하더라도 해당 디렉터리에 있는 모든 파일만 압축할 수 있습니다.
이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.
gzip은 Linux 시스템에서 파일을 압축하고 압축을 푸는 데 자주 사용되는 명령입니다. 이 명령으로 압축된 새 파일의 확장자는 일반적으로 ".gz"로 표시됩니다.
gzip 명령은 디렉터리가 아닌 파일만 압축할 수 있다는 점을 다시 한 번 강조하고 싶습니다. 디렉터리를 지정하더라도 해당 디렉터리에 있는 모든 파일만 압축할 수 있습니다.
gzip 명령의 기본 형식은 다음과 같습니다.
[root@localhost ~]# gzip [选项] 源文件
명령의 소스 파일은 압축 작업을 수행할 때 일반 파일을 참조하고, 압축 해제 작업을 수행할 때는 압축 파일을 참조합니다. 이 명령의 일반적으로 사용되는 옵션과 의미는 표 1에 나와 있습니다.
옵션 | 의미 |
---|---|
-c | 압축된 데이터를 표준 출력으로 출력하고 소스 파일을 유지합니다. |
-d | 압축 파일의 압축을 풉니다. |
-r | 지정된 디렉터리와 하위 디렉터리의 모든 파일을 반복적으로 압축합니다. |
-v | 압축 및 압축 해제된 각 파일에 대해 해당 파일 이름과 압축 비율이 표시됩니다. |
-l | 각 압축 파일에 대해 다음 필드가 표시됩니다.
|
는 압축 수준을 지정하는 데 사용되며, -1은 가장 낮은 압축 수준을 가지며, -9는 가장 낮은 압축 비율을 갖습니다. 기본 압축 비율은 -6입니다. |
gzip 압축 명령은 매우 간단합니다. 압축 후 압축 패키지 이름을 지정할 필요도 없이 소스 파일 이름만 지정하면 됩니다.
[root@localhost ~]# gzip install.log #压缩instal.log 文件 [root@localhost ~]# ls anaconda-ks.cfg install.log.gz install.log.syslog #压缩文件生成,但是源文件也消失了
[예제 2] 소스 파일 압축 유지
gzip 명령을 사용하여 파일을 압축하면 소스 파일이 사라지고 압축 파일이 생성됩니다. 이때 강박장애를 겪는 분들이 계시는데, 저자에게 '파일을 압축할 때 소스파일이 사라지는 것을 방지할 수 있나요?'라고 질문하시는 분들이 계십니다. 네, 가능합니다. 하지만 매우 어색합니다.
[root@localhost ~]# gzip -c anaconda-ks.cfg >anaconda-ks.cfg.gz #使用-c选项,但是不让压缩数据输出到屏幕上,而是重定向到压缩文件中,这样可以缩文件的同时不删除源文件 [root@localhost ~]# ls anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog #可以看到压缩文件和源文件都存在
[예제 3] 디렉터리 압축
gzip 명령으로 디렉터리를 압축할 수 있다는 사실을 당연하게 여길 수도 있습니다. 시도해 봅시다:
[root@localhost ~]# mkdir test [root@localhost ~]# touch test/test1 [root@localhost ~]# touch test/test2 [root@localhost ~]# touch test/test3 #建立测试目录,并在里面建立几个测试文件 [root@localhost ~]# gzip -r test/ #压缩目录,并没有报错 [root@localhost ~]# ls anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog test #但是查看发现test目录依然存在,并没有变为压缩文件 [root@localhost ~]# ls test/ testl .gz test2.gz test3.gz #原来gzip命令不会打包目录,而是把目录下所有的子文件分别压缩
Linux에서는 패키징과 압축이 별도로 처리됩니다. gzip 명령은 패키지가 아닌 압축만 가능하므로 패키징 디렉터리는 없고 디렉터리에 있는 파일만 압축되는 상황이 발생하게 됩니다.
사례 데모:압축된 파일
[root@localhost ~]# ls //显示当前目录文件 a.c b.h d.cpp [root@localhost ~]# gzip * //压缩目录下的所有文件 [root@localhost ~]# ls //显示当前目录文件 a.c.gz b.h.gz d.cpp.gz [root@localhost ~]#
예 1에서 계속, 자세한 정보 나열
gzip -dv * //解压文件,并列出详细信息
예 1에서 계속, 압축 파일 정보 표시
gzip -l *
관련 권장 사항: "
L 리눅스 비디오 튜토리얼위 내용은 Linux gzip 압축 명령을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!