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

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

青灯夜游
青灯夜游オリジナル
2022-11-25 19:28:2810912ブラウズ

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

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

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

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

gzip コマンドはファイルの圧縮にのみ使用でき、ディレクトリの圧縮には使用できないことを再度強調したいと思います。ディレクトリを指定した場合でも、圧縮できるのはディレクトリ内のすべてのファイルのみです。

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

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

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

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

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

#関連する推奨事項: 「

Linux ビデオ チュートリアル

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。