linux压缩和打包工具gzip_bzip2_xz_zip_tar

gizp:
*gzip工具不能压缩目录,只能压缩文件
压缩:gzip filename

[[email protected] test01]# ll -h *   #查看压缩前all.txt文件大小
-rw-r--r-- 1 root root 4.2M 9月   7 13:44 all.txt
[[email protected] test01]# gzip all.txt   #压缩all.txt文件
[[email protected] test01]# ll -h *    #查看压缩后all.txt文件大小
-rw-r--r-- 1 root root 1.2M 9月   7 13:44 all.txt.gz

解压:gzip -d filename

[[email protected] test01]# ls
all.txt.gz
[[email protected] test01]# gzip -d all.txt.gz
[[email protected] test01]# ls
all.txt

解压:gunzip -d filename

[[email protected] test01]# ls
all.txt.gz
[[email protected] test01]# gunzip -d all.txt.gz
[[email protected] test01]# ls
all.txt

指定压缩率:gzip -n filename (n的范围:1-9,压缩等级9压缩率最高,压缩速度也就最慢,对cup资源的消耗也就相对过高,压缩等级1压缩率最低,压缩速度也就最快,对cpu资源的消耗相对过低,默认等级为6)

[[email protected] test01]# gzip -9 all.txt
[[email protected] test01]# file all.txt.gz  #file查看文件最后一列压缩等级为最大压缩率
all.txt.gz: gzip compressed data, was "all.txt", from Unix, last modified: Sat Sep  7 13:44:13 2019, max compression

查看压缩文件内容:(在不解压的情况下查看压缩文件内容使用zcat命令)

[[email protected] test01]# zcat all.txt.gz 

-c 参数:在压缩或解压时保留源文件

[[email protected] test01]# gzip -c all.txt > all.txt.gz
[[email protected] test01]# ls
all.txt  all.txt.gz
[[email protected] test01]# gzip -d -c all.txt.gz > all2.txt
[[email protected] test01]# ls
all2.txt  all.txt  all.txt.gz

bzip2:
*与gzip类似,不能压缩目录,只能压缩文件,压缩率比gzip高
安装bzip2工具:

[[email protected] test01]# yum -y install bzip2

压缩:bzip2 filename
解压:bizp2 -d filename 或 bunzip2 -d filename
查看压缩文件内容:bzcat filename
*与gzip一样可以指定压缩率,但bzip2默认压缩等级为9,同样可以使用-c参数

xz:
与gzip、bzip2类似,不能压缩目录,只能压缩文件,压缩率比gzip、bzip2高*
压缩:xz filename
解压:xz -d filename 或 unxz -d filename
查看压缩文件内容:xzcat filename
与gzip、bzip一样可以指定压缩率,默认压缩等级最高,同样可以使用-c参数
gzip、bzip2、xz在解压时使用-c参数不仅可以保留源文件,还可以重命名解压文件*

zip:
*zip可以压缩目录和文件,在解压时可以指定解压路径,但不能重命名解压内容
安装:

[[email protected] ~]# yum -y install zip

压缩文件:zip 压缩文件名 源文件名 (源文件可以是多个文件)

[[email protected] test01]# ls
filetest.txt  test02  test.sh
[[email protected] test01]# zip abc.zip filetest.txt test.sh
  adding: filetest.txt (deflated 85%)
  adding: test.sh (deflated 79%)
[[email protected] test01]# ls  #将filetest.txt test.sh两个文件添加到压缩文件abc.zip
abc.zip  filetest.txt  test02  test.sh

压缩目录:zip -r 压缩文件名 源文件名 (源文件可以是多个目录和文件)

[[email protected] test01]# ls
abc.zip  filetest.txt  test02  test.sh
[[email protected] test01]# zip -r linuxtest.zip test02/ filetest.txt
  adding: test02/ (stored 0%)
  adding: test02/all.txt (deflated 71%)
  adding: filetest.txt (deflated 85%)
[[email protected] test01]# ls
abc.zip  filetest.txt  linuxtest.zip  test02  test.sh

*zip压缩或解压文件或目录后,会自动保留源文件

解压:unzip filename

[[email protected] test01]# ls
abc.zip  filetest.txt  linuxtest.zip  test02  test.sh
[[email protected] test01]# rm -rf filetest.txt test.sh
[[email protected] test01]# ls
abc.zip  linuxtest.zip  test02
[[email protected] test01]# unzip abc.zip
Archive:  abc.zip
  inflating: filetest.txt
  inflating: test.sh
[[email protected] test01]# ls
abc.zip  filetest.txt  linuxtest.zip  test02  test.sh

将压缩文件中的内容解压到指定目录: unzip filename -d 目标目录路径

[[email protected] test01]# ls
abc.zip  filetest.txt  linuxtest.zip  test02  test.sh
[[email protected] test01]# unzip linuxtest.zip -d /root/mytest/
Archive:  linuxtest.zip
   creating: /root/mytest/test02/
  inflating: /root/mytest/test02/all.txt
  inflating: /root/mytest/filetest.txt
[[email protected] test01]# ls /root/mytest/
filetest.txt  test02

查看压缩文件中的文件列表: unzip -l filename
*与gzip、bzip2、xz不同,unzip只能查看文件列表,不能查看文件中的内容

[[email protected] test01]# unzip -l linuxtest.zip
Archive:  linuxtest.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  09-07-2019 15:18   test02/
  4340076  09-07-2019 13:44   test02/all.txt
     2943  09-07-2019 15:26   filetest.txt
---------                     -------
  4343019                     3 files

tar:
*tar工具将多个文件或目录打包到一个文件中(比如要压缩一个目录,里面有很多小文件,可以使用tar将该目录先打包成一个文件再压缩),增加传输速度,对文件大小改变不会太大,tar打包时可以同时打包多个目录加文件

打包:tar -cvf 打包文件名 源文件

[[email protected] test01]# ls
test02  test.sh
[[email protected] test01]# tar -cvf testfile.tar test02/ test.sh
test02/
test02/all.txt
test02/filetest.txt
test.sh
[[email protected] test01]# ls  #将目录/test02和文件test.sh都打包为testfile.tar文件
test02  testfile.tar  test.sh

解包:tar -xvf 目标文件

[[email protected] test01]# ls
test02  testfile.tar  test.sh
[[email protected] test01]# rm -rf test02 test.sh
[ro[email protected] test01]# ls
testfile.tar
[[email protected] test01]# tar -xvf testfile.tar
test02/
test02/all.txt
test02/filetest.txt
test.sh
[[email protected] test01]# ls
test02  testfile.tar  test.sh

查看tar文件的文件列表:tar -tf 目标文件

[[email protected] test01]# tar -tf testfile.tar
test02/
test02/all.txt
test02/filetest.txt
test.sh

打包时过滤指定文件:- -exclude
过滤指定文件:

[[email protected] test01]# ls test02/
all.txt  filetest.txt  test.sh
[[email protected] test01]# tar -cvf testfile.tar --exclude filetest.txt test02/
test02/
test02/all.txt
test02/test.sh
[[email protected] test01]# ls
test02  testfile.tar
[[email protected] test01]# tar -tf testfile.tar
test02/
test02/all.txt
test02/test.sh

过滤指定类型的文件:

[[email protected] test01]# tar -cvf testfile.tar --exclude "*.txt" test02/
test02/
test02/test.sh
[[email protected] test01]# ls
test02  testfile.tar
[[email protected] test01]# tar -tf testfile.tar
test02/
test02/test.sh

可以使用多个- -exclude:

[[email protected] test01]# tar -cvf testfile.tar --exclude filetest.txt --exclude test.sh test02/
test02/
test02/all.txt
[[email protected] test01]# ls
test02  testfile.tar
[[email protected] test01]# tar -tf testfile.tar
test02/
test02/all.txt

tar在打包的同时支持压缩:

1.打包的同时压缩成gzip包:-zcvf

[[email protected] test01]# du -sh test02/
4.2M    test02/
[[email protected] test01]# tar -zcvf testfile.tar.gz test02/
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh
[[email protected] test01]# du -sh testfile.tar.gz
1.2M    testfile.tar.gz

解压tar.gz包:-zxvf

[[email protected] test01]# tar -zxvf testfile.tar.gz
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh

2.打包的同时压缩成bzip2包: -jcvf

[[email protected] test01]# tar -jcvf testfile.tar.bz2 test02/
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh
[[email protected] test01]# du -sh testfile.tar.bz2
1.2M    testfile.tar.bz2

解压tar.bz2包: -jxvf

[[email protected] test01]# tar -jxvf testfile.tar.bz2
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh

3.打包的同时压缩成xz包: -Jcvf

[[email protected] test01]# tar -Jcvf testfile.tar.xz test02/
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh
[[email protected] test01]# du -sh testfile.tar.xz
252K    testfile.tar.xz

解压tar.xz包: -Jxvf

[[email protected] test01]# tar -Jxvf testfile.tar.xz
test02/
test02/all.txt
test02/filetest.txt
test02/test.sh

原文地址:https://blog.51cto.com/14520558/2436448

时间: 2024-10-13 14:16:27

linux压缩和打包工具gzip_bzip2_xz_zip_tar的相关文章

linux下压缩与打包工具——gzip, bzip2 和 tar;

以下内容来自:阿铭http://www.apelearn.com/study_v2/chapter11.html, 把常用的写出来了:感觉可以了: 只管压缩与解压缩的工具: gzip 工具: 用的时候只记住这几个参数就可以了:  注意: gzip 不可以压缩目录: -d, 它表示解压缩,压缩的时候不用加参数: -k, 表示 keep,如果不加它,在压缩或解压缩时,原文件会消失:当加上 –k, 原文件不会消失: 压缩之后的文件的后缀名为 .gz, 例子如下: [email protected]:~

Linux压缩解压工具--日常学习

Date:2017-04-08 命令(对应格式):gzip(.gz)  bzip2(.bz2)  xz(.xz)  compress(.z)   tar(.tar) 1.gzip 语法:gzip  选项  FILE 常用选项:-d   -#    -c (1)-d(decompressiom):解压 解压的方式有两种:"gizp  -d   FILE" 和"gunzip  FIEL" eg: tmp]# ls -lh messages(-h:human-readdb

Linux 压缩与打包

一. linux压缩后缀解释说明 *.Z compress 程序压缩的文件: *.gz gzip 程序压缩的文件: *.bz2 bzip2 程序压缩的文件: *.tar tar 程序打包的数据,并没有压缩过: *.tar.gz tar 程序打包的文件,其中并且经过 gzip 的压缩 *.tar.bz2 tar 程序打包的文件,其中并且经过 bzip2 的压缩 二. gzip, zcat [[email protected] ~]# gzip [-cdtv#] 档名 [[email protect

Linux压缩与解压缩工具

一.简述 压缩是一种通过特定的算法来减少计算机文件大小的机制,因减少文件的大小,使文件能通过网络实现更快传输,此外还减少了文件的磁盘占用空间.反向就是解压缩 二,工具 1,compress / umcompress 后缀名 .Z,很老的压缩工具,已经过时了. 2,gip , bzip2, xz (1) gzip / gunzip :压缩 / 解压缩 都会删除原文件 语法:gzip [选项] 压缩(解压缩)文件名 后缀名:.gz #    常用选项: #    -# : 压缩比,默认为6,范围1到

Linux压缩及归档工具整理

gzip:.gz,只能压缩文件,不能压缩目录 gzip somefiles:压缩完成后会删除原文件 -d:解压缩 -# :1-9,指定压缩比,默认为6 gunzip:解压缩 gunzip somefiles.gz:解压完成后删除原压缩文件 zcat somefiles.gz:查看gzip压缩文件内的文本文件内容 bzip2:.bz2,只能压缩文件,不能压缩目录 比gzip有着更大压缩比的压缩工具: bzip2 somefiles:压缩完成后会删除原文件 -d:解压 -# :1-9,指定压缩比,默

linux压缩、归档工具

1.gzip/bzip2/xz [-#] file,只能压缩文件,不可压缩目录. 通用的参数: -#:指定压缩比1-9,默认是6 -d:展开,即解压 a. gzip,gunzip=gzip -d,默认压缩有原文件删除,解压后压缩文件删除. -c:将压缩结果输出到屏幕,可以使用重定向将其保存为压缩文件,从而保留原文件. gzip -c mmm > mmm.gz gzip mmm gzip -d mmm.gz 不解压查看压缩文件 zcat file b. bzip2,bunzip2=bzip2 -d

linux 压缩/解压缩/打包命令

压缩:tar -zcvf  路径+文件名  原始文件路径+文件名 压缩: tar -jcvf 路径+文件名 原始文件路径+文件名 解压缩:tar -zxvf 路径+文件名 解压位置 解压缩:tar -jxvf  路径+文件名 解压位置 命令可选项: 压缩与解压缩 -c  :压缩 -x:解压缩 压缩方式: -z :按照gzip的方式压缩或者解压缩 -j: 按照bzip2的方式压缩或者解压缩 其他选项: -v:过程中显示文件名 -f:制定文件名

Linux 压缩与解压缩工具gzip/gunzip

gzip会压缩原文件并将原文件删除 -d 解压缩选项 类似于gunzip -# 指定压缩比 默认是6 -c 将压缩内容输出到标准输出上,并保留原文件 出现了压缩文件,但是原文件没有了. 现在解压缩 解压缩完成后,压缩文件消失了. 上面这个例子是将原文件压缩后的字符输出到标准输出上 就是将压缩文件的字符重定向到其他文件 gunzip 就是对gzip的压缩文件进行解压缩 原文地址:http://blog.51cto.com/yueyue207/2085786

Linux 压缩与解压缩工具之xz

-d 解压缩 -# 指定压缩比 -k 保留原文件 现在压缩并保留原文件 也可以通过unxz解压缩 不解压查看文件内容 原文地址:http://blog.51cto.com/yueyue207/2085794