Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Was sind die Linux-Komprimierungsbefehle?

Was sind die Linux-Komprimierungsbefehle?

青灯夜游
青灯夜游Original
2023-03-01 18:55:2344166Durchsuche

Linux-Komprimierungsbefehle: 1. tar-Befehl, fügen Sie einfach eine „z“-Komprimierungsoption hinzu, die Syntax lautet „tar -z komprimierte Paketquelldatei oder -verzeichnis“ 2. zip-Befehl, Sie können eine komprimierte Datei erstellen und dabei das Original beibehalten Die Integrität der Datei lautet: „Zip [Option] komprimierte Paketname-Quelldatei oder Quellverzeichnisliste“ 3. Der gzip-Befehl lautet „gzip [Option] Quelldatei“ 4. Der bzip2-Befehl lautet Syntax ist „bzip2 [Option] Quelldatei“ „; 5. xz-Befehl, Syntax „xz-komprimierter Paketname“.

Was sind die Linux-Komprimierungsbefehle?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

Was ist Komprimierung unter Linux?

Komprimierung bezieht sich auf die Verwendung von Algorithmen zur Verarbeitung von Dateien, um den Zweck zu erreichen, die maximale Dateiinformation beizubehalten und die Dateigröße zu reduzieren. Das Grundprinzip besteht darin, eine Wörterbuchdatei mit denselben Bytes zu erstellen, indem nach wiederholten Bytes in der Datei gesucht und diese mit einem Code dargestellt wird.

Komprimierung ähnelt Archivdateien, und diese Sammlung wird ebenfalls in einer Datei gespeichert. Der Unterschied besteht jedoch darin, dass komprimierte Dateien unterschiedliche Speichermethoden verwenden, sodass sie weniger Speicherplatz beanspruchen Speicherplatz als die Gesamtgröße aller Dateien in der Sammlung.

Da die von Computern verarbeiteten Informationen in binärer Form ausgedrückt werden, markiert Komprimierungssoftware dieselben Zeichenfolgen in binären Informationen mit Sonderzeichen. Solange vernünftige mathematische Berechnungen durchgeführt werden, kann die Dateigröße stark komprimiert werden. Verwenden Sie eine Komprimierungssoftware, um eine oder mehrere Dateien zu einem Dateikomprimierungspaket zu komprimieren, wodurch Speicherplatz gespart und die Übertragung im Netzwerk erleichtert werden kann.

Das Komprimieren einer Datei kann den Inhalt der Datei beschädigen. Daher kann die Komprimierung in verlustbehaftete Komprimierung und verlustfreie Komprimierung unterteilt werden. Die verlustfreie Komprimierung ist leicht zu verstehen, was bedeutet, dass die komprimierten Daten genau sein müssen. Die verlustbehaftete Komprimierung bedeutet, dass selbst der Verlust einzelner Daten keine großen Auswirkungen auf die Datei hat. Verlustbehaftete Komprimierung wird häufig in Animations-, Ton- und Bilddateien verwendet. Typische Vertreter sind das Videodateiformat MPEG, das Musikdateiformat MP3 und das Bilddateiformat JPG.

Verwenden Sie ein Komprimierungstool, um die Datei zu komprimieren. Die Größe der Datei beträgt normalerweise nur die Hälfte der Originaldatei oder sogar weniger. Es ist zu beachten, dass die Daten im komprimierten Paket nicht direkt verwendet werden können. Sie müssen vor der Verwendung ein Komprimierungstool verwenden, um die Dateidaten wiederherzustellen.

Linux-Komprimierungsbefehl

Es gibt viele häufig verwendete Komprimierungsbefehle wie gzip, zip, bzip2.

tar-Komprimierungsbefehl

Der Befehl tar ist kein spezieller Komprimierungsbefehl. Es wird häufig verwendet, um mehrere Dateien in einer einzigen Datei zusammenzufassen, um sie einfach auf ein anderes System zu übertragen, oder um Dateien als zusammenhängende Gruppe zu sichern. Es bietet auch Komprimierungsfunktionen, was sinnvoll ist, und durch Anhängen einer z-Komprimierungsoption kann die Datei komprimiert werden. tar 命令不是专门的压缩命令。它通常用于将多个文件拉入一个单个的文件中,以便容易地传输到另一个系统,或者将文件作为一个相关的组进行备份。它也提供压缩的功能,这就很有意义了,附加一个 z 压缩选项能够实现压缩文件。

当使用 z 选项为 tar 命令附加压缩过程时,tar 使用 gzip 来进行压缩。

就像压缩一组文件一样,你可以使用 tar 来压缩单个文件,尽管这种操作与直接使用 gzip 相比没有特别的优势。要使用 tar 这样做,只需要使用 tar cfz newtarfile filename 命令来标识要压缩的文件,就像标识一组文件一样,像这样:

$ tar cfz bigfile.tgz bigfile
            ^            ^
            |            |
            +- 新的文件  +- 将被压缩的文件

$ ls -l bigfile*
-rw-rw-r-- 1 shs shs 103270400 Apr 16 16:09 bigfile
-rw-rw-r-- 1 shs shs 21608325 Apr 16 16:08 bigfile.tgz

注意,文件的大小显著减少了。

如果你愿意,你可以使用 tar.gz 扩展名,这可能会使文件的特征更加明显,但是大多数的 Linux 用户将很可能会意识到与 tgz 的意思是一样的 – targz 的组合来显示文件是一个压缩的 tar 文件。在压缩完成后,你将同时得到原始文件和压缩文件。

要将很多文件收集在一起并在一个命令中压缩出 “tar ball”,使用相同的语法,但要指定要包含的文件为一组,而不是单个文件。这里有一个示例:

$ tar cfz bin.tgz bin/*
          ^         ^
          |         +-- 将被包含的文件
          + 新的文件

zip压缩命令

zip 命令创建一个压缩文件,与此同时保留原始文件的完整性。语法像使用 tar 一样简单,只是你必需记住,你的原始文件名称应该是命令行上的最后一个参数。

$ zip ./bigfile.zip bigfile
updating: bigfile (deflated 79%)
$ ls -l bigfile bigfile.zip
-rw-rw-r-- 1 shs shs 103270400 Apr 16 11:18 bigfile
-rw-rw-r-- 1 shs shs  21606889 Apr 16 11:19 bigfile.zip

gzip压缩命令

gzip 命令非常容易使用。你只需要键入 gzip,紧随其后的是你想要压缩的文件名称。不像上述描述的命令,gzip

Wenn Sie mithilfe der Option z einen Komprimierungsprozess an den Befehl tar anhängen, verwendet tar gzip zur Komprimierung.

Genau wie beim Komprimieren einer Gruppe von Dateien können Sie tar verwenden, um eine einzelne Datei zu komprimieren, obwohl sich dieser Vorgang von der Verwendung von gzipunterscheidet > direkt Es gibt keinen besonderen Vorteil gegenüber ihm. Um dies mit tar zu tun, verwenden Sie einfach den Befehl tar cfz newtarfile filename, um die zu komprimierende Datei zu identifizieren, genau wie Sie es bei einer Gruppe von Dateien tun würden, etwa so:

$ gzip bigfile
$ ls -l bigfile*
-rw-rw-r-- 1 shs shs  21606751 Apr 15 17:57 bigfile.gz
🎜

Beachten Sie, dass die Dateigröße erheblich reduziert wird. 🎜

Wenn Sie möchten, können Sie die Erweiterung tar.gz verwenden, die die Eigenschaften der Datei möglicherweise deutlicher macht, aber die meisten Linux-Benutzer werden dies wahrscheinlich tun Beachten Sie, dass tgz dasselbe bedeutet – eine Kombination aus tar und gz, um zu zeigen, dass es sich bei der Datei um eine komprimierte TAR-Datei handelt. Nach Abschluss der Komprimierung erhalten Sie sowohl die Originaldatei als auch die komprimierte Datei. 🎜

Um viele Dateien zusammenzufassen und einen „Tar-Ball“ in einem Befehl zu komprimieren, verwenden Sie dieselbe Syntax, geben Sie jedoch die einzuschließenden Dateien als Gruppe und nicht als einzelne Datei an. Hier ist ein Beispiel: 🎜🎜

$ bzip bigfile
$ ls -l bigfile*
-rw-rw-r-- 1 shs shs  18115234 Apr 15 17:57 bigfile.bz2
🎜🎜🎜zip-Komprimierungsbefehl🎜🎜

zip-Befehl erstellt eine komprimierte Datei und bewahrt gleichzeitig die Integrität der Originaldatei. Die Syntax ist so einfach wie die Verwendung von tar, außer dass Sie bedenken müssen, dass Ihr ursprünglicher Dateiname das letzte Argument in der Befehlszeile sein sollte. 🎜🎜

$ xz bigfile
$ ls -l bigfile*
-rw-rw-r-- 1 shs shs 13427236 Apr 15 17:30 bigfile.xz
🎜🎜🎜gzip-Komprimierungsbefehl🎜🎜

gzip Der Befehl ist sehr einfach zu verwenden. Sie müssen lediglich gzip eingeben, gefolgt vom Namen der Datei, die Sie komprimieren möchten. Im Gegensatz zu den oben beschriebenen Befehlen „verschlüsselt“ gzip die Datei „an Ort und Stelle“. Mit anderen Worten: Die Originaldatei wird durch die „verschlüsselte“ Datei ersetzt. 🎜🎜

-rw-rw-r-- 1 shs shs 103270400 Apr 16 14:01 bigfile
------------------------------------------------------
-rw-rw-r-- 1 shs shs 18115234 Apr 16 13:59 bigfile.bz2    ~17%
-rw-rw-r-- 1 shs shs 21606751 Apr 16 14:00 bigfile.gz     ~21%
-rw-rw-r-- 1 shs shs 21608322 Apr 16 13:59 bigfile.tgz    ~21%
-rw-rw-r-- 1 shs shs 13427236 Apr 16 14:00 bigfile.xz     ~13%
-rw-rw-r-- 1 shs shs 21606889 Apr 16 13:59 bigfile.zip    ~21%
🎜

bzip2压缩命令

像使用 gzip 命令一样,bzip2 将在你选择的文件“就地”压缩,不留下原始文件。

$ bzip bigfile
$ ls -l bigfile*
-rw-rw-r-- 1 shs shs  18115234 Apr 15 17:57 bigfile.bz2

xz压缩命令

xz 是压缩命令团队中的一个相对较新的成员,在压缩文件的能力方面,它是一个领跑者。像先前的两个命令一样,你只需要将文件名称提供给命令。再强调一次,原始文件被就地压缩。

$ xz bigfile
$ ls -l bigfile*
-rw-rw-r-- 1 shs shs 13427236 Apr 15 17:30 bigfile.xz

对于大文件来说,你可能会注意到 xz 将比其它的压缩命令花费更多的运行时间,但是压缩的结果却是非常令人赞叹的。

压缩命令对比

大多数人都听说过“大小不是一切”。所以,让我们比较一下文件大小以及一些当你计划如何压缩文件时的问题。

下面显示的统计数据都与压缩单个文件相关,在上面显示的示例中使用 bigfile。这个文件是一个大的且相当随机的文本文件。压缩率在一定程度上取决于文件的内容。

  • 大小减缩率

当比较时,上面显示的各种压缩命产生下面的结果。百分比表示压缩文件与原始文件的比较效果。

-rw-rw-r-- 1 shs shs 103270400 Apr 16 14:01 bigfile
------------------------------------------------------
-rw-rw-r-- 1 shs shs 18115234 Apr 16 13:59 bigfile.bz2    ~17%
-rw-rw-r-- 1 shs shs 21606751 Apr 16 14:00 bigfile.gz     ~21%
-rw-rw-r-- 1 shs shs 21608322 Apr 16 13:59 bigfile.tgz    ~21%
-rw-rw-r-- 1 shs shs 13427236 Apr 16 14:00 bigfile.xz     ~13%
-rw-rw-r-- 1 shs shs 21606889 Apr 16 13:59 bigfile.zip    ~21%

xz 命令获胜,最终只有压缩文件 13% 的大小,但是所有这些压缩命令都相当显著地减少原始文件的大小。

  • 是否替换原始文件

bzip2gzipxz 命令都用压缩文件替换原始文件。tarzip 命令不替换。

  • 运行时间

xz 命令似乎比其它命令需要花费更多的时间来“加密”文件。对于 bigfile 来说,大概的时间是:

命令      运行时间
tar       4.9 秒
zip       5.2 秒
bzip2    22.8 秒
gzip      4.8 秒
xz       50.4 秒

解压缩文件很可能比压缩时间要短得多。

  • 文件权限

不管你对压缩文件设置什么权限,压缩文件的权限将基于你的 umask 设置,但 bzip2 除外,它保留了原始文件的权限。

  • 与 Windows 的兼容性

zip 命令创建的文件可以在 Windows 系统以及 Linux 和其他 Unix 系统上使用(即解压),而无需安装其他工具,无论这些工具可能是可用还是不可用的。

相关推荐:《Linux视频教程

Das obige ist der detaillierte Inhalt vonWas sind die Linux-Komprimierungsbefehle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn