当前位置: 首页 > article >正文

Linux进阶:压缩、解压

压缩、解压

Linux和Mac系统通常有2种压缩格式,后缀名分别是:

  • .tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装

  • .gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积

tar语法

语法:tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N

  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
  • -z,gzip模式,不使用-z就是普通的tarball格式
  • -C,选择解压的目的地,用于解压模式

注意

  • -z选项如果使用的话,一般处于选项位第一个
  • -f:选项,必须在选项位最后一个
  • -C:选项单独使用,和解压所需的其它参数分开
tar压缩

针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作

示例:

tar -zcvf 压缩包 被压缩1...被压缩2...被压缩N

  • -z表示使用gzip,可以不写

tar压缩的常用组合为:

  • tar -cvf test.tar 1.txt 2.txt 3.txt:将1.txt 2.txt 3.txt 压缩到test.tar文件内

  • tar -zcvf test.tar.gz 1.txt 2.txt 3.txt:将1.txt 2.txt 3.txt 压缩到test.tar.gz文件内,使用gzip模式

tar解压

语法:tar -zxvf 被解压的文件 -C 要解压去的地方

  • -z,表示使用gzip,可以省略
  • -C,可以省略,指定要解压去的地方,不写解压到当前目录

常用的tar解压组合有:

  • tar -xvf test.tar:解压test.tar,将文件解压至当前目录

  • tar -xvf test.tar -C /home/user:解压test.tar,将文件解压至指定目录(/home/user)

  • tar -zxvf test.tar.gz -C /home/user:以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/user)

zip语法

可以使用zip命令,压缩文件为zip压缩包

语法:zip [-r] 参数1 参数2 ... 参数N

  • -r,被压缩的包含文件夹的时候,需要使用-r选项,和rmcp等命令的-r效果一致,即递归处理文件夹内的文件
zip压缩

zip [-r] 参数1 参数2 ... 参数N

示例:

  • zip test.zip a.txt b.txt c.txt:将a.txt b.txt c.txt 压缩到test.zip文件内

  • zip -r test.zip test user a.txt:将test、user两个文件夹和a.txt文件,压缩到test.zip文件内

unzip解压

使用unzip命令,可以方便的解压zip压缩包

语法:unzip [-d] 参数

  • -d,指定要解压去的位置,同tar-C选项

  • 参数,被解压的zip压缩包文件

示例:

  • unzip test.zip:将test.zip解压到当前目录

  • unzip test.zip -d /home/user:将test.zip解压到指定文件夹内(/home/user)


http://www.kler.cn/a/402325.html

相关文章:

  • 开源控件:Qt/C++自定义异形窗口和颜色选择器 【工程源码联系博主索要】
  • 【游戏开发】【Unity】基本的Unity概念
  • 深入解析 MySQL 数据库:负载均衡
  • unity 打包WebGL打开后Input无法输入中文,在手机端无法调用输入法(使用WebGLInput)
  • 【Keil5教程及技巧】耗时一周精心整理万字全网最全Keil5(MDK-ARM)功能详细介绍【建议收藏-细细品尝】
  • SSHPASS或者rsync远程自动连接服务器并且在docker中跑脚本
  • 【迅为】瑞芯微-RK3568开发板Linux+HAL启动测试
  • CSS回顾-CSS选择器详解
  • 智能电视/盒子的应用管理——通过ADB工具优化体验
  • GIS开发该怎么系统性地学习?
  • Unity类银河战士恶魔城学习总结(P132 Merge skill tree with skill Manager 把技能树和冲刺技能相组合)
  • LLM文档对话 —— pdf解析关键问题
  • 在 WSL2 Ubuntu22.04环境安装 MySQL
  • k8s -20241119
  • 如何解决网站被渗透:全面指南与实践
  • 三天精通一种算法之螺旋矩阵(设计思路),长度最小子数组(滑动窗口)
  • React状态管理详解
  • Ubuntu22.04安装CH343驱动并创建udev规则
  • Vue 专属状态管理库Pinia的使用与实践
  • 解决前后端发版本时候,手动清除浏览器缓存