linux 下命令行进行文件的压缩和解压 + unzip解压缩中文问题

1.概述

  • 习惯了在windows 下利用软件进行压缩和解压缩,那么在 Linux 的命令行模式下如何进行操作呐?
  • Linux 下常用的压缩和解压缩命令有3个:zip , unzip , tar

2. 使用

2.1 zip 命令

  • zip 命令是针对 .zip 文件的,用于将一个/多个文件压缩成 .zip 格式的文件,其命令格式如下:
zip [参数] [目标压缩文件.zip] [源文件]
相关参数如下:
-b<工作目录 > 指定暂时存放文件的目录。 
-d 从 zip 文件中删除一个文件。 
-F 尝试修复已经损毁的压缩文件。 
-g 将文件压缩入现有的压缩文件中,不需要新建。 
-h 帮助。
-j 只保存文件的名,不保存目录。 
-m 压缩完成以后删除源文件。 
-n<字尾符号 > 不压缩特定扩展名的文件。 
-q 不显示压缩命令执行过程。 
-r 递归压缩,将指定目录下的所有文件和子目录一起压缩。
-v 显示指令执行过程。
-num 压缩率,为 压缩率,为 压缩率,为 1~9的数值。 
  • 例如,将 wzl 文件夹压缩成wzl_1,使用如下命令:
zip -rv wzl_1.zip wzl

2.2 unzip 命令

  • 与zip 命令相反,unzip 命令用于对 .zip 格式的压缩包进行及压缩,其命令格式如下:
unzip [参数] [解压缩文件名.zip]
主要参数如下:
-l 显示压缩文件内所包含的文件。
-t 检查压缩文件是否损坏,但不解压。
-v 显示命令的执行过程。
-Z 只显示压缩文件的注解。 
-C 压缩文件中的名称区分大小写。 
-j 不处理压缩文件中的原有目录路径。 
-L 将压缩文件中的全部文件名改为小写。
-n 解压缩时不需要覆盖原有文件。 
-P<密码> 解压密码。
-q 静默执行,不显示任何信息。 
-x<文件列表 > 指定不要处理.zip中的哪些文件中的哪些文件。 
-d<目录 > 把压缩文件解到指定目录下。

例如,将上面的wzl_1.zip 解压缩成 wzl 并保存到 /home 目录

unzip -d /home/wzl wzl_1.zip
  • unzip解压缩中文问题
# 指定编码GBK
unzip -O GBK xxx.zip

2.3 tar命令

  • zip 和 unzip 命令只能对 .zip 类型的文件进行操作,对其他文件就无能为力了,比如Linux 中最常使用到 .gz 和 .bz2 文件,这2种类型的文件需要使用到tar 命令。tar 将压缩和解压缩集合到一起,只是使用不同的参数而已,其命令格式如下:
tar [参数] [已经压缩文件名] [未被压缩文件名]
常用参数如下: 
-c 创建新的压缩文件。
-C<目的目录> 切换到指定的目录。 
-f<备份文件> 指定压缩文件。
-j 使用bzip2进行压缩/解压,一般使用.tar.bz2后缀
-v 显示指令执行过程。
-w 遭遇问题时先询问用户。
-x 从备份文件中释放文件,也就是解压缩文件。
-z 用tar 生成压缩文件,用 gzip 压缩。
-Z 用tar 生成压缩文件,用 compress 压缩。

例如,将wzl 压缩成 .bz2 和 .gz 格式

tar -vcjf wzl.tar.bz2 wzl
tar -vczf wzl.tar.gz wzl

将压缩文件解压缩命令为:

tar -vxjf wzl.tar.ba2
tar -vxzf wzl.tar.gz

3.参考

  • https://www.runoob.com/linux/linux-comm-unzip.html
  • https://www.jianshu.com/p/bd4e41d903b9
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来鸟 鸣间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值