Sous Linux, la commande gzip est utilisée pour compresser et décompresser les fichiers. Le nouveau fichier compressé par cette commande a une extension généralement marquée comme ".gz" et la syntaxe est "fichier source gzip [option]". Les fichiers ordinaires sont appelés fichiers source dans la syntaxe lors des opérations de compression, tandis que les fichiers compressés sont appelés fichiers source lors des opérations de décompression. Même si un répertoire est spécifié, la commande gzip ne peut compresser que tous les fichiers du répertoire, pas le répertoire entier.
gzip est une commande souvent utilisée pour compresser et décompresser des fichiers dans les systèmes Linux. L'extension du nouveau fichier compressé par cette commande est généralement marquée comme ".gz".
Veuillez noter que la commande gzip ne fonctionne que sur les fichiers compressés, pas sur les répertoires. Même si un répertoire est spécifié, il compressera uniquement tous les fichiers de ce répertoire. Le format de base de la commande
gzip est le suivant : Le fichier source dans la commande
[root@localhost ~]# gzip [选项] 源文件
fait référence à un fichier ordinaire lors de l'exécution d'une opération de compression, lors de l'exécution d'une opération de décompression, il fait référence à un fichier compressé ; Les options et significations couramment utilisées de cette commande sont présentées dans le tableau 1.
Option | Signification |
---|---|
-c | Sortez les données compressées sur la sortie standard et conservez le fichier source. |
-d | Décompressez les fichiers compressés. |
-r | Compressez de manière récursive tous les fichiers du répertoire et des sous-répertoires spécifiés. |
-v | Pour chaque fichier compressé et décompressé, le nom du fichier correspondant et le taux de compression sont affichés. |
-l | Pour chaque fichier compressé, les champs suivants sont affichés :
|
【Exemple 1】Compression de base |
[root@localhost ~]# gzip install.log #压缩instal.log 文件 [root@localhost ~]# ls anaconda-ks.cfg install.log.gz install.log.syslog #压缩文件生成,但是源文件也消失了
[Exemple 2] Conserver la compression du fichier source
<div class="code" style="position:relative; padding:0px; margin:0px;"><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><div class="contentsignin">Copier après la connexion</div></div><p>【例 2】保留源文件压缩
</p>
当使用 gzip 命令压缩文件时,源文件会被删除,并生成一个压缩文件。这时有些人会有强迫症,就逼问笔者:能不能在压缩文件的时候,不让源文件消失?好吧,也是可以的,不过很别扭。
<div class="code" style="position:relative; padding:0px; margin:0px;"><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><div class="contentsignin">Copier après la connexion</div></div><p>【例 3】 压缩目录
</p>
我们可能会想当然地认为 gzip 命令可以压缩目录。 我们来试试:
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false"> [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 ~]#</pre><div class="contentsignin">Copier après la connexion</div></div><p>在 Linux 中,打包和压缩是分开处理的。而 gzip 命令只会压缩,不能打包,所以才会出现没有打包目录,而只把目录下的文件进行压缩的情况。
</p>
案例演示:
压缩文件
【Exemple 3】 Répertoire compressé
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false">gzip -dv * //解压文件,并列出详细信息</pre><div class="contentsignin">Copier après la connexion</div></div><p>接范例1, 列出详细的信息
</p>
Lorsque vous utilisez la commande gzip pour compresser un fichier, le fichier source sera supprimé et un fichier compressé sera généré. À ce moment-là, certaines personnes souffriront de trouble obsessionnel-compulsif et demanderont à l'auteur : pouvez-vous empêcher le fichier source de disparaître lors de la compression du fichier ? D'accord, c'est possible, mais c'est très gênant.
gzip -l *