Linux-----11、压缩打包

2023-12-15 09:28:12

# 打包压缩

# 一、压缩工具

# 1、常见的压缩与解压缩工具

压缩工具说明解压缩工具
zip兼容类unix与windows,可以压缩多个文件或目录unzip
gzip压缩单个文件,压缩率相对低,cpu开销相对低gunzip
bzip2压缩单个文件,压缩率相对高,cpu开销相对高bunzip2
xz压缩单个文件,压缩率高,压缩时间相对长,解压速度快,cpu开销高unxz

# 2、工具的用法

# zip工具
压缩:
zip 压缩后的文件 需要压缩的文件

选项:
-r 递归压缩,压缩目录

注意:zip压缩默认压缩后的格式就是.zip;当然也可以加后缀.zip,一般都加上

解压缩:
-d 指定解压缩路径


示例:
# 压缩多个目录下的文件,和文件夹
zip -r /tmp/test_passwd.zip /test/ /etc/passwd
# 压缩目录需要 添加递归压缩指令 -r 递归压缩
zip -r /tmp/test.zip /test/

# 解压到当前目录
unzip test.zip
# 解压到指定目录
unzip -d test_passwd.zip

# ② gzip工具
压缩:
gzip 需要压缩的单个文件

选项:
-d 解压缩
-r 递归压缩(目录)

解压缩:
gunzip 需要解压的文件
或者
gzip -d 需要解压的文件

gunzip file* 一次解压多个文件,*代表通配符;file*表示以file开头所有文件


示例:
# 只支持单个文件 默认会添加 .gz后缀
gzip file1
# 压缩多个单文件 file1.gz file2.gz file 3.gz 
gzip file1 file2 file3
# 递归压缩单个文件
gzip -r test

# ③ bzip2工具
压缩:
bzip2 需要压缩的文件

选项:
-d 解压缩

# ④ xz 工具
选项:
-z 压缩,默认
-d 解压缩 或者 unxz


压缩: 
xz 文件名
解压缩:
unxz 文件名
或者
xz -d 文件名

# 三、打包工具

tar命令:可以将多个文件打包成一个并且压缩,不会改变文件的属性,很常用。

用法:

tar 选项 打包后的文件 需要打包的文件

常用选项说明
-c创建tar包(打包)
-z调用gzip工具压缩
-j调用bzip2工具压缩
-J调用xz工具压缩
-v显示详细信息
-f指定包名
-x解压
-C指定解压路径
-t列出或查看tar包内容
-r往tar包里追加文件

注意说明:

1. 以上选项前面的横杠"-"可以省略
2. 如果已经将文件压缩打包,那么就不能追加;如果只是打包就可以追加。
3. 参数顺序需要注意,最好把-f参数放到所有参数后面。
4. 当出现以下提示时,加一个大P参数解决。
tar: Removing leading `/' from member names

示例:打包、解压
# 使用gz工具、打包、显示过程、指定文件名称,压缩当前目录下所有文件
tar -zcvf /tmp/test.tar.gz *

# 解压时可以省略 打包工具
tar -xf /tmp/test.tar.gz -C /dir1/

tar -cvJf /tmp/boot_test.tar.xz /test/ /boot/
tar -PcvJf /tmp/boot_test.tar.xz /test/ /boot/

image-20231101101448998

示例:tar包预览、追加
tar cvf /tmp/test.tar ./*

# 列表查看tar包中的文件, -t 
tar -tf /tmp/test.tar

# 追加文件, -r
tar -Pf /tmp/test.tar -r /etc/hosts
tar -tf /tmp/test.tar

本文转自 https://docs.xiaoshaozi.site/zs-use/linux/

文章来源:https://blog.csdn.net/weixin_44235759/article/details/135008447
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。