大家好,又见面了,我是你们的朋友全栈君。
嗨,大家好,又与大家见面了,感谢大家在2021年的陪伴,让我们在2022年继续一路前行。相信很多小伙伴在使用Linux系统中经常对文件进行或者文件夹进行操作,不像在Windows中可以使用可视化的工具对文件和文件夹进行压缩和解压操作,那么本次与大家一起学习Linux下zip和unzip的压缩和解压命令,并熟悉常用的参数介绍。
相信很多对于有一定Linux基础的小伙伴,常用的压缩有:zip、unzip、tar、gzip、bzip2等常用的命令,下面开始zip和unzip使用方法和参数详解。
针对Linux系统中的文件或者文件夹进行压缩,使压缩后的文件后缀为zip。
如上图中,test文件夹下有:admin文件夹、index 和test两个文件,现在将其打包为一个admin.zip压缩文件,其执行的命令是:
zip -p -r admin.zip admin/
通过执行命令可以看到,已经将test文件夹下的三个文件和文件夹进行了打包,变成了admin.zip压缩文件。具体如下图:
zip在Linux系统中用于压缩文件和文件夹,zip是在Windows和Linux等系统中常用的压缩程序,其压缩后的后缀名为.zip。 zip常用的参数汇总整理如下:
参数 | 参数描述信息 |
---|---|
-A | 调整可执行的自动解压缩文件。 |
-b<工作目录> | 指定暂时存放文件的目录。 |
-c | 替每个被压缩的文件加上注释。 |
-d | 从压缩文件内删除指定的文件。 |
-D | 压缩文件内不建立目录名称。 |
-f | 更新现有的文件。 |
-F | 尝试修复已损坏的压缩文件。 |
-g | 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。 |
-h | 在线帮助。 |
-i<范本样式> | 只压缩符合条件的文件。 |
-j | 只保存文件名称及其内容,而不存放任何目录名称。 |
-J | 删除压缩文件前面不必要的数据。 |
-k | 使用MS-DOS兼容格式的文件名称。 |
-l | 压缩文件时,把LF字符置换成LF+CR字符。 |
-ll | 压缩文件时,把LF+CR字符置换成LF字符。 |
-L | 显示版权信息。 |
-m | 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。 |
-n<字尾字符串> | 不压缩具有特定字尾字符串的文件。 |
-o | 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。 |
-q | 不显示指令执行过程。 |
-r | 递归处理,将指定目录下的所有文件和子目录一并处理。 |
-S | 包含系统和隐藏文件。 |
-t<日期时间> | 把压缩文件的日期设成指定的日期。 |
-T | 检查备份文件内的每个文件是否正确无误。 |
-u | 与 -f 参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。 |
-v | 显示指令执行过程或显示版本信息。 |
-V | 保存VMS操作系统的文件属性。 |
-w | 在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。 |
-x<范本样式> | 压缩时排除符合条件的文件。 |
-X | 不保存额外的文件属性。 |
-y | 直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。 |
-z | 替压缩文件加上注释。 |
-$ | 保存第一个被压缩文件所在磁盘的卷册名称。 |
-<压缩效率> | 压缩效率是一个介于1-9的数值。 |
上面已经通过示例对test文件夹下的文件进行了压缩操作,那么现在针对压缩后的文件admin.zip文件进行解压操作,首先删除其他文件,只保留admin.zip文件。
执行如下解压命令之后,可以看到admin.zip文件已经把我们刚刚压缩的文件已经解压完成。
unzip admin.zip
unzip命令用于解压后缀为.zip文件,unzip为.zip压缩文件的解压程序,zip为.zip的压缩程序,两者正好相互对应。 unzip常用的参数汇总整理如下:
参数 | 参数描述信息 |
---|---|
-c | 将解压缩的结果显示到屏幕上,并对字符做适当的转换。 |
-f | 更新现有的文件。 |
-l | 显示压缩文件内所包含的文件。 |
-p | 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。 |
-t | 检查压缩文件是否正确。 |
-u | 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。 |
-v | 执行是时显示详细的信息。 |
-z | 仅显示压缩文件的备注文字。 |
-a | 对文本文件进行必要的字符转换。 |
-b | 不要对文本文件进行字符转换。 |
-C | 压缩文件中的文件名称区分大小写。 |
-j | 不处理压缩文件中原有的目录路径。 |
-L | 将压缩文件中的全部文件名改为小写。 |
-M | 将输出结果送到more程序处理。 |
-n | 解压缩时不要覆盖原有的文件。 |
-o | 不必先询问用户,unzip执行后覆盖原有文件。 |
-P<密码> | 使用zip的密码选项。 |
-q | 执行时不显示任何信息。 |
-s | 将文件名中的空白字符转换为底线字符。 |
-V | 保留VMS的文件版本信息。 |
-X | 解压缩时同时回存文件原来的UID/GID。 |
.zip文件 | 指定.zip压缩文件。 |
文件 | 指定要处理.zip压缩文件中的哪些文件。 |
-d<目录> | 指定文件解压缩后所要存储的目录。 |
-x<文件> | 指定不要处理.zip压缩文件中的哪些文件。 |
-Z | unzip |
zip和unzip一个是压缩命令,一个是解压命令,那么怎么在不解压文件的情况下查看压缩文件中都包含哪些内容呢,下面就用到了zipinfo的命令。zipinfo命令用于列出压缩文件信息,可以在不解压的情况下知道压缩文件的详细信息。例如执行命令如下:
zipinfo admin.zip
通过执行命令之后。我们可以看到压缩文件的基本信息,包括压缩文件的大小、文件的数量、文件的权限信息、文件的日期信息、具体的文件名称和文件夹信息,还是非常全面的。具体截图信息如下:
zipinfo常用的参数汇总整理如下:
参数 | 参数描述信息 |
---|---|
-1 | 只列出文件名称。 |
-2 | 此参数的效果和指定”-1″参数类似,但可搭配”-h”,”-t”和”-z”参数使用。 |
-h | 只列出压缩文件的文件名称。 |
-l | 此参数的效果和指定”-m”参数类似,但会列出原始文件的大小而非每个文件的压缩率。 |
-m | 此参数的效果和指定”-s”参数类似,但多会列出每个文件的压缩率。 |
-M | 若信息内容超过一个画面,则采用类似more指令的方式列出信息。 |
-s | 用类似执行”ls -l”指令的效果列出压缩文件内容。 |
-t | 只列出压缩文件内所包含的文件数目,压缩前后的文件大小及压缩率。 |
-T | 将压缩文件内每个文件的日期时间用年,月,日,时,分,秒的顺序列出。 |
-v | 详细显示压缩文件内每一个文件的信息。 |
-x<范本样式> | 不列出符合条件的文件的信息。 |
-z | 如果压缩文件内含有注释,就将注释显示出来。 |
好了,以上就是Linux 常用的zip压缩和解压命令详解,感谢您的阅读,希望您喜欢,如对您有帮助,欢迎点赞收藏。如有不足之处,欢迎评论指正。下次见。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/133805.html原文链接:https://javaforall.cn