翼度科技»论坛 云主机 LINUX 查看内容

linux tar打包压缩解压命令学习

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
Linux系统中tar是最常用的打包工具,通过打包工具可以压缩/解压 比如常见的压缩包格式 如下:

  • tar           未压缩文件 只是做了一个打包而已
  • tar.gz      使用gzip算法格式压缩的压缩包
  • tar.bz2    bz2格式压缩包
  • tar.xz       xz格式压缩
参数介绍

tar 的参数很多 列出几个比较常用的记录一下。
格式 tar -[参数...] [文件/目录]
参数含义-ccreate创建文件-C 指定解压位置-x提取解压文件-t列出压缩包中包含哪些文件,查看包中的内容-zgzip格式压缩或解压-Z支持compress解压文件-f指定打包压缩的备份文件-v显示指令执行过程-r添加文件到已经压缩的文件-u添加改变了和现有的文件到已经存在的压缩文件-j支持bz2格式压缩或解压-v显示执行过程-J支持xz格式压缩或解压-k保留原有文件不覆盖-m保留文件不被覆盖-w确认压缩文件的正确性-p保留原来的文件权限与属性-P使用文件名的绝对路径,不移除文件名称前的“/”号演示

当前目录有一个1.5G的SQL文件。
  1. [root@mysqlbak]# ll -h
  2. total 1.5G
  3. -rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
复制代码
仅打包

执行打包
  1. tar cvf databak.tar mysql_data_prod_2023-12-22-13-
  2. 07.sql
复制代码
查看打包的文件结果 可以看到就是单纯的打个包 并没有压缩
  1. ll -h
  2. total 2.9G
  3. -rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
  4. -rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
复制代码
解压命令 tar -xvf databak.tar
使用gzip压缩并打包
  1. tar zcvf databak.tar.gz  mysql_data_prod_2023-12-22-13-07.sql
复制代码
查看gzip打包的效果 databak.tar.gz 文件明显从1.5GB缩小到238M了 。但是花的时间稍微要长一点。
  1. ll -h
  2. total 3.1G
  3. -rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
  4. -rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
  5. -rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
复制代码
解压命令 tar -zxvf databak.tar.gz
使用bz2压缩并打包
  1. tar jcvf  databak.tar.bz2 mysql_data_prod_2023-12-22-13-07.sql
复制代码
查看bz2的打包效果 可以看到文件名为 databak.tar.bz2 只有133M了。但是压缩的时间是真的长
  1. ll -h
  2. total 3.3G
  3. -rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
  4. -rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
  5. -rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
复制代码
解压命令 tar -jxvf databak.tar.bz2
使用xz压缩并打包
  1. tar -Jcvf  databak.tar.xz mysql_data_prod_2023-12-22-13-07.sql
复制代码
查看xz的打包效果 可以看到文件名为 databak.tar.xz只有119M了。压缩时间竟然比bz2还要更长。
  1. ll -h
  2. -rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
  3. -rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
  4. -rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
  5. -rw-r--r-- 1 root root 119M Dec 22 17:48 databak.tar.xz
复制代码
解压命令 tar -Jxvf databak.tar.xz
总结


  • 从压缩后的文件大小来看 gz > bz2 > xz


  • 从压缩后的消耗时长来看 gz< bz2 <  xz
压缩的时间越长 压缩后的文件越小,但是解压的时间也会边长,所以选一个中规中矩的压缩方式是最好的,毕竟硬盘又不贵,目前比较普遍的格式是tar.gz。压缩大小和时间都比较居中 能够接收。
另外zip命令也是比较常用的压缩工具 使用命令格式:
  1. #压缩
  2. zip -r xxx.zip  xxx.sql
  3. #解压
  4. unzip xxx.zip
复制代码
来源:https://www.cnblogs.com/peachyy/p/17922134.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具