Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Linux-Komprimierungsbefehle (Zusammenfassung)

Linux-Komprimierungsbefehle (Zusammenfassung)

藏色散人
藏色散人nach vorne
2020-01-23 13:35:2643398Durchsuche

Linux-Komprimierungsbefehle (Zusammenfassung)

Linux-Komprimierungsbefehl

Gängige Komprimierungsformate in Linux sind .zip, .gz, .bz2, .tar , .tar.gz, .tar.bz2; häufig verwendete Komprimierungsbefehle umfassen zip und tar. Hier finden Sie Beispiele für die Verwendung der einzelnen Komprimierungsbefehle. Für weitere Verwendung verwenden Sie bitte den Befehl --help.

Empfohlen: „Linux-Tutorial

zip

Format:

zip [options] 目标压缩包名称 待压缩源文件
unzip [-Z] [options] 待压缩源文件 [list] [-x xlist] [-d exdir]

Allgemeine Befehle:

# 压缩文件
zip myfile.zip myfile
# 压缩文件夹(包含子目录)
zip -r mydir.zip mydir
# 压缩当前目录所有文件
zip mydir.zip *
# 解压文件
unzip mydir.zip

zip Weitere Parameter:

-v 显示操作详细信息
-d 从压缩包里删除文件
-m 将文件剪切到压缩包里,源文件将被删除
-r 递归压缩
-x 排除文件
-c 加一行备注
-z 加备注
-T 测试压缩包完整性
-e 加密
-q 安静模式
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率
--help 查看帮助
-h2 查看更多帮助

unzip Weitere Parameter:

-v 显示操作详细信息
-l 查看压缩包内容
-d 解压到指定文件夹
-x 排除压缩包内文件
-t 测试压缩包文件内容
-z 查看备注
-o 覆盖文件无需提示
-q 安静模式
--help 查看帮助

Beispiel:

$ ls
t.md  t.php t.php.zip
# 创建压缩包
$ zip -v myfile.zip t.*
  adding: t.md  (in=8121) (out=1051) (deflated 87%)
  adding: t.php (in=740) (out=319) (deflated 57%)
  adding: t.php.zip     (in=1666) (out=1666) (stored 0%)
total bytes=10527, compressed=3036 -> 71% savings
# 测试压缩包完整性
$ zip -T myfile.zip 
test of myfile.zip OK
# 测试压缩包文件内容
$ unzip -t myfile.zip 
Archive:  myfile.zip
    testing: t.md                     OK
    testing: t.php                    OK
    testing: t.php.zip                OK
No errors detected in compressed data of myfile.zip.
# 查看压缩包里内容
$ unzip -l myfile.zip 
Archive:  myfile.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
     8121  06-08-2016 17:03   t.md
      740  06-08-2016 17:02   t.php
     1666  07-30-2016 17:38   t.php.zip
---------                     -------
    10527                     3 files
# 从压缩包里删除文件t.php.zip   
$ zip -d myfile.zip t.php.zip
deleting: t.php.zip
# 从压缩包里删除文件t.php
$ zip -d myfile.zip t.php
deleting: t.php
# 添加文件到压缩包里
$ zip -u myfile.zip t.php
  adding: t.php (deflated 57%)
# 给压缩包添加注释  
$ zip -z myfile.zip
enter new zip file comment (end with .):
test
.
# 查看压缩包注释
$ unzip -z myfile.zip 
Archive:  myfile.zip
test
# 解压到指定文件夹
$ unzip myfile.zip -d my
Archive:  myfile.zip
test .
  inflating: my/t.md                 
  inflating: my/t.php
# 排除文件不解压
$ unzip myfile.zip  -x t.php -d my
Archive:  myfile.zip
test .
  inflating: my/t.md

gz

Format:

gzip [options] 待压缩源文件
gunzip [options]  待解压文件

Sie müssen den endgültigen Namen der komprimierten Datei nicht eingeben, es wird automatisch das Suffix .gz hinzugefügt Beenden und löschen Sie die Quelldatei.

Allgemeine Befehle:

# 压缩1.log,同时会自动删除源文件
gzip 1.log
# 解压1.log.gz,同时会自动删除压缩包
gzip -d 1.log.gz
# 压缩1.log,保留源文件
gzip -k 1.log
# 解压1.log.gz,保留压缩包
gzip -dk 1.log.gz
# 查看压缩包信息
gzip -l 1.log.gz
# 递归的对目录里的每个文件单独压缩
gzip -r mydir

Hinweis: gunzip und gzip -d sind gleichwertig und können GZ-Dateien dekomprimieren.

Weitere Parameter:

-c, --stdout 将压缩后的内容在标准输出显示出来,保留原文件
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率

Beispiel:

# 压缩1.log为1.log.gz,保留源文件
gzip -c 1.log > 1.log.gz

bz2

Format:

bzip2 [options] 待压缩源文件
bunzip2 [options]  待解压文件

Allgemeine Befehle:

# 压缩1.log
bzip2 1.log
bzip2 -k 1.log
# 解压1.log.bz2
bzip2 -d 1.log.bz2
bzip2 -dk 1.log.bz2
bunzip2 1.log.bz2
bunzip2 -k 1.log.bz2

Weitere Parameter:

-c, --stdout 将压缩后的内容在标准输出显示出来,保留原文件
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率

tar

Format:

tar [options] 目标压缩包名称 待压缩源文件

Allgemeine Befehle:

# 打包后,以gzip 压缩
tar zcvf test.tar.gz /test  #压缩/test为test.tar.gz
# 解压test.tar.gz
tar zxvf test.tar.gz 
# 打包后,以bzip2 压缩
tar jcvf test.tar.bz2 /test  #压缩/test为test.tar.bz2
# 解压test.tar.bz2
tar jxvf test.tar.bz2
# 仅打包,不压缩
tar cvf test.tar /test  #压缩/test为test.tar
# 解压test.tar
tar xvf test.tar
# 查看压缩包内容列表
tar tvf test.tar.gz
# 解压到指定文件夹(目标文件夹必须存在)
$ tar -zxvf all.tar.gz -C my/
# 压缩时排除某些目录
$ tar -zcvf tomcat.tar.gz --exclude=tomcat/logs tomcat
$ tar -zcvf tomcat.tar.gz --exclude=tomcat/logs --exclude=tomcat/libs --exclude=tomcat/xiaoshan.txt tomcat

Allgemeine Parameterbeschreibung:

-c, --create: 建立压缩档案
-x, --extract, --get:解压
-t, --list:查看内容
-r, --append:向压缩归档文件末尾追加文件
-u, --update:更新原压缩包中的文件
-d, --diff, --compare 将压缩包里的文件与文件系统进行对比
    --delete 从压缩包里删除

Dies sind unabhängige Befehle, die zur Komprimierung und Dekomprimierung verwendet werden. Sie können jedoch nur einen verwenden davon. Die folgenden Parameter sind optional, wenn Dateien nach Bedarf komprimiert oder dekomprimiert werden:

-z, --gzip, --gunzip, --ungzip:有gzip属性的
-j, --bzip2:有bz2属性的
-Z, --compress, --uncompress:有compress属性的
-v, --verbose:显示所有过程
-O, --to-stdout:将文件解开到标准输出
-C, --directory=DIR:解压到指定文件夹

Der letzte Parameter -f ist erforderlich:

-f, --file=ARCHIVE: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

Befehlshilfe anzeigen:

tar --help
tar -?
tar --usage

Weitere Beispiele:

# 比较压缩包里文件与源文件变动
$ tar --diff -vf 1.log.tar 1.log
1.log
1.log: Mod time differs
1.log: Size differs
# 删除压缩包里的1.log
$ tar --delete -vf 1.log.tar 1.log
# 向压缩归档文件里追加文件
$ tar rvf 1.log.tar 1.log 2.log
1.log
2.log
# 向压缩归档文件里更新文件
$ tar uvf 1.log.tar 1.log 2.log

Erklärung: Dateien können nicht an tar.gz und tar.bz2 angehängt oder aktualisiert werden:

$ tar zrvf all.tar.gz 3.log
tar: Cannot update compressed archives
Try 'tar --help' or 'tar --usage' for more information.

Das obige ist der detaillierte Inhalt vonLinux-Komprimierungsbefehle (Zusammenfassung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen