Linux——解压缩各类文件

Linux

Linux------解压缩各类文件


文章目录


一、解压文件

1.1、gz

bash 复制代码
# 解压后删除原gz文件
gzip -d FileName.gz
gunzip myfile.gz

# 解压后保留原gz文件
gzip -dk FileName.gz

1.2、tar

tar 本身不是一个压缩工具,而是一个"打包"工具。它的主要目的是将多个文件、目录及其结构(如权限、所有者、时间戳等元数据)合并到一个单一的文件中。

bash 复制代码
tar -xvf FileName.tar
# -x :从压缩的文件中提取文件
# -v :输出 tar 的详细过程
# -f :指定文件名称

1.3、tar.gz

gzip:只能压缩单个文件:这正是为什么需要先使用 tar 打包的原因。

bash 复制代码
tar -zxvf FileName.tar.gz
# -z :支持 gzip 解压文件

1.4、tar.bz2

bzip2:比gzip压缩率高,生成的 .bz2 文件更小,但是压缩速度慢,消耗更多的 CPU 资源。

bash 复制代码
tar -jxvf FileName.tar.bz2

1.5、zip

bash 复制代码
unzip FileName.zip

二、压缩文件

2.1、gz

bash 复制代码
# 压缩为gz文件,到当前目录,原文件被删除
gzip FileName

# 压缩为gz文件,到指定目录,原文件被删除
gzip FileName -r DirName

# 压缩为gz文件,到当前目录,原文件不删除
gzip -k FileName

2.2、tar

bash 复制代码
tar -cvf FileName.tar.gz DirName
# -c :创建 tar 文件

2.3、tar.gz

bash 复制代码
# 压缩/DirName/文件夹下的所有文件
tar -zcvf FileName.tar.gz /DirName/

# 压缩/DirName/文件夹下的所有文件,除了log为后缀的文件
tar -zcvf FileName.tar.gz /DirName/ --exclude='*.log'

2.4、tar.bz2

bash 复制代码
# 压缩/DirName/文件夹下的所有文件
tar -jcvf FileName.tar.bz2 /DirName/

# 压缩/DirName/文件夹下的所有文件,除了log为后缀的文件
tar -jcvf FileName.tar.gz /DirName/ --exclude='*.log'

2.5、zip

bash 复制代码
zip FileName

补充、tar命令的参数注释

bash 复制代码
-A 新增压缩文件到已存在的压缩
-c 建立新的压缩文件
-d 记录文件的差别
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性
相关推荐
orion5718 小时前
Missing Semester Class1:course overview and introduction of shell
linux
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房2 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia3 天前
linux curl命令详解_curl详解
linux
扛枪的书生3 天前
Linux 网络管理器用法速查
linux
顺风尿一寸3 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode3 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫3 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux