linux tar打包压缩命令学习
2023-12-22 19:26:39
Linux系统中tar是最常用的打包工具,通过打包工具可以压缩/解压 比如常见的压缩包格式 如下:
- tar 未压缩文件 只是做了一个打包而已
- tar.gz 使用gzip算法格式压缩的压缩包
- tar.bz2 bz2格式压缩包
- tar.xz xz格式压缩
参数介绍
tar 的参数很多 列出几个比较常用的记录一下。
格式 tar -[参数…] [文件/目录]
参数 | 含义 |
---|---|
-c | create创建文件 |
-C <目录> | 指定解压位置 |
-x | 提取解压文件 |
-t | 列出压缩包中包含哪些文件,查看包中的内容 |
-z | gzip格式压缩或解压 |
-Z | 支持compress解压文件 |
-f<备份文件> | 指定打包压缩的备份文件 |
-v | 显示指令执行过程 |
-r | 添加文件到已经压缩的文件 |
-u | 添加改变了和现有的文件到已经存在的压缩文件 |
-j | 支持bz2格式压缩或解压 |
-v | 显示执行过程 |
-J | 支持xz格式压缩或解压 |
-k | 保留原有文件不覆盖 |
-m | 保留文件不被覆盖 |
-w | 确认压缩文件的正确性 |
-p | 保留原来的文件权限与属性 |
-P | 使用文件名的绝对路径,不移除文件名称前的“/”号 |
演示
当前目录有一个1.5G的SQL文件。
[root@mysqlbak]# ll -h
total 1.5G
-rw-r--r-- 1 root root 1.5G Dec 22 13:08 mysql_data_prod_2023-12-22-13-07.sql
仅打包
执行打包
tar cvf databak.tar mysql_data_prod_2023-12-22-13-
07.sql
查看打包的文件结果 可以看到就是单纯的打个包 并没有压缩
ll -h
total 2.9G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-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压缩并打包
tar zcvf databak.tar.gz mysql_data_prod_2023-12-22-13-07.sql
查看gzip打包的效果 databak.tar.gz 文件明显从1.5GB缩小到238M了 。但是花的时间稍微要长一点。
ll -h
total 3.1G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
-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压缩并打包
tar jcvf databak.tar.bz2 mysql_data_prod_2023-12-22-13-07.sql
查看bz2的打包效果 可以看到文件名为 databak.tar.bz2 只有133M了。但是压缩的时间是真的长
ll -h
total 3.3G
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
解压命令 tar -jxvf databak.tar.bz2
使用xz压缩并打包
tar -Jcvf databak.tar.xz mysql_data_prod_2023-12-22-13-07.sql
查看xz的打包效果 可以看到文件名为 databak.tar.xz只有119M了。压缩时间竟然比bz2还要更长。
ll -h
-rw-r--r-- 1 root root 1.5G Dec 22 17:07 databak.tar
-rw-r--r-- 1 root root 133M Dec 22 17:26 databak.tar.bz2
-rw-r--r-- 1 root root 238M Dec 22 17:18 databak.tar.gz
-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命令也是比较常用的压缩工具 使用命令格式:
#压缩
zip -r xxx.zip xxx.sql
#解压
unzip xxx.zip
文章来源:https://blog.csdn.net/tao1992/article/details/135158711
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!