ホームページ >運用・保守 >Linuxの運用と保守 >Linuxのgzip圧縮コマンドの使い方

Linuxのgzip圧縮コマンドの使い方

WBOY
WBOY転載
2023-06-02 12:17:003565ブラウズ

Linux では、ファイルの圧縮と解凍に gzip コマンドが使用されます。このコマンドで圧縮された新しいファイルの拡張子は通常「.gz」とマークされ、構文は次のとおりです。 「gzip [オプション] ソース ファイル」。圧縮操作中の構文では通常のファイルはソース ファイルと呼ばれますが、圧縮ファイルは解凍操作中にソース ファイルと呼ばれます。ディレクトリが指定されている場合でも、gzip コマンドはディレクトリ内のすべてのファイルのみを圧縮できます。ディレクトリ全体を圧縮することはできません。

gzip は、Linux システムでファイルの圧縮と解凍によく使用されるコマンドで、このコマンドで圧縮された新しいファイルの拡張子は通常「.gz」とマークされます。

gzip コマンドは圧縮ファイルに対してのみ機能し、ディレクトリに対しては機能しないことに注意してください。ディレクトリを指定した場合でも、そのディレクトリ内のすべてのファイルのみが圧縮されます。

gzip コマンドの基本形式は次のとおりです:

[root@localhost ~]# gzip [选项] 源文件

コマンド内のソース ファイルは、圧縮時は通常のファイルを参照し、解凍時は通常のファイルを参照します。圧縮とは、ファイルを圧縮することを指します。このコマンドの一般的に使用されるオプションと意味を表 1 に示します。

#表 1 gzip コマンドの一般的なオプションと意味##オプション-c#-d圧縮ファイルを解凍します。 -r指定されたディレクトリおよびサブディレクトリ内のすべてのファイルを再帰的に圧縮します。 -v圧縮ファイルと解凍ファイルごとに、対応するファイル名と圧縮率が表示されます。 -l圧縮ファイルごとに、次のフィールドが表示されます。 - 数値 は圧縮レベルの指定に使用されます。-1 は最低の圧縮レベルであり、最低の圧縮率です。 ; -9 は最高の圧縮率です。デフォルトの圧縮率は -6 です。 [例 1] 基本的な圧縮
意味
ソース ファイルを保持したまま、圧縮データを標準出力に出力します。
圧縮ファイルのサイズ;
  • <p></p>非圧縮ファイルのサイズ;
  • <p></p>圧縮率;
  • <p></p>非圧縮ファイルの名前。
  • <p></p>
gzip 圧縮コマンドは非常に簡単で、圧縮後に圧縮パッケージ名を指定する必要さえありません。ソースファイル名を指定するだけです。試してみましょう: <p></p>

[root@localhost ~]# gzip install.log
#压缩instal.log 文件
[root@localhost ~]# ls
anaconda-ks.cfg install.log.gz install.log.syslog
#压缩文件生成,但是源文件也消失了

[例 2] ソース ファイルの圧縮を維持する

<p></p>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】 圧縮されたディレクトリ

<p></p>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 コマンドは圧縮のみが可能で、パッケージ化はできないため、パッケージング ディレクトリがなく、ディレクトリ内のファイルのみが圧縮される状況が発生します。

<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 から続けて詳細をリストします。情報

<p><pre class="brush:js;toolbar:false">gzip -dv * //解压文件,并列出详细信息</pre></p>

例 1 に進み、圧縮ファイル情報を表示しますlinux gzip压缩命令如何使用

gzip -l *

<p></p>

以上がLinuxのgzip圧縮コマンドの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。