집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux gzip 압축 명령을 사용하는 방법
Linux에서 gzip 명령은 파일을 압축하고 압축을 푸는 데 사용됩니다. 이 명령으로 압축된 새 파일은 일반적으로 ".gz"로 표시되는 확장자를 가지며 구문은 "gzip [옵션] 소스 파일"입니다. 압축 작업 중에는 구문에서 일반 파일을 소스 파일이라고 하고, 압축 해제 작업에서는 압축 파일을 소스 파일이라고 합니다. 디렉토리가 지정되더라도 gzip 명령은 전체 디렉토리가 아닌 디렉토리에 있는 모든 파일만 압축할 수 있습니다.
gzip은 Linux 시스템에서 파일을 압축 및 압축 해제하는 데 자주 사용되는 명령입니다. 이 명령으로 압축된 새 파일의 확장자는 일반적으로 ".gz"로 표시됩니다.
gzip 명령은 디렉터리가 아닌 압축 파일에서만 작동한다는 점에 유의하세요. 디렉터리를 지정하더라도 해당 디렉터리에 있는 모든 파일만 압축됩니다.
gzip 명령의 기본 형식은 다음과 같습니다.
[root@localhost ~]# gzip [选项] 源文件
명령의 소스 파일은 압축 작업을 수행할 때 일반 파일을 참조하고, 압축 해제 작업을 수행할 때는 압축 파일을 참조합니다. 이 명령의 일반적으로 사용되는 옵션과 의미는 표 1에 나와 있습니다.
옵션 | 의미 |
---|---|
-c | 압축된 데이터를 표준 출력으로 출력하고 소스 파일을 보관합니다. |
-d | 압축 파일의 압축을 풉니다. |
-r | 지정된 디렉터리와 하위 디렉터리의 모든 파일을 반복적으로 압축합니다. |
-v | 압축 및 압축 해제된 각 파일에 대해 해당 파일 이름과 압축 비율이 표시됩니다. |
-l | 각 압축 파일에 대해 다음 필드가 표시됩니다.
|
gzip 압축 명령은 매우 간단합니다. 압축 후 압축 패키지 이름을 지정할 필요도 없이 소스 파일 이름만 지정하면 됩니다. 시도해 봅시다: |
gzip 명령을 사용하여 파일을 압축하면 소스 파일이 삭제되고 압축 파일이 생성됩니다. 이때 강박장애를 겪는 분들이 계시는데, 저자에게 '파일을 압축할 때 소스파일이 사라지는 것을 방지할 수 있나요? 네, 가능합니다. 하지만 매우 어색합니다.
<pre class="brush:js;toolbar:false">[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
#可以看到压缩文件和源文件都存在</pre><p>【예 3】 압축 디렉터리
</p>
우리는 gzip 명령이 디렉터리를 압축할 수 있다는 것을 당연하게 여길 수 있습니다. 시도해 봅시다:
<pre class="brush:js;toolbar:false">[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命令不会打包目录,而是把目录下所有的子文件分别压缩</pre><p>Linux에서는 패키징과 압축이 별도로 처리됩니다. gzip 명령은 패키지가 아닌 압축만 가능하므로 패키징 디렉터리는 없고 디렉터리에 있는 파일만 압축되는 상황이 발생하게 됩니다.
</p>
<p>압축 파일</p>
[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에 이어 압축 파일 정보 표시<p><pre class="brush:js;toolbar:false">gzip -l *</pre></p>
위 내용은 Linux gzip 압축 명령을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!