zip 压缩命令

http://man.linuxde.net/zip

zip (参数选项) (A.zip) (文件夹或文件)
-A:调整可执行的自动解压缩文件;
-b<工作目录>:指定暂时存放文件的目录;
-c:替每个被压缩的文件加上注释;
-d:从压缩文件内删除指定的文件;
-D:压缩文件内不建立目录名称;
-f:此参数的效果和指定“-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中;
-F:尝试修复已损坏的压缩文件;
-g:将文件压缩后附加在已有的压缩文件之后,而非另行建立新的压缩文件;
-h:在线帮助;
-i<范本样式>:只压缩符合条件的文件;
-j:只保存文件名称及其内容,而不存放任何目录名称;
-J:删除压缩文件前面不必要的数据;
-k:使用MS-DOS兼容格式的文件名称;
-l:压缩文件时,把LF字符置换成LF+CR字符;
-ll:压缩文件时,把LF+cp字符置换成LF字符;
-L:显示版权信息;
-m:将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中;
-n<字尾字符串>:不压缩具有特定字尾字符串的文件;
-o:以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同;
-q:不显示指令执行过程;
-r:递归处理,将指定目录下的所有文件和子目录一并处理;
-S:包含系统和隐藏文件;
-t<日期时间>:把压缩文件的日期设成指定的日期;
-T:检查备份文件内的每个文件是否正确无误;
-u:更换较新的文件到压缩文件内;
-v:显示指令执行过程或显示版本信息;
-V:保存VMS操作系统的文件属性;
-w:在文件名称里假如版本编号,本参数仅在VMS操作系统下有效;
-x<范本样式>:压缩时排除符合条件的文件;
-X:不保存额外的文件属性;
-y:直接保存符号连接,而非该链接所指向的文件,本参数仅在UNIX之类的系统下有效;
-z:替压缩文件加上注释;
-$:保存第一个被压缩文件所在磁盘的卷册名称;
-<压缩效率>:压缩效率是一个介于1~9的数值。
### ZIP 压缩命令参数及用法详解 ZIP 是一种广泛使用的压缩工具,尤其在 Linux 和其他类 Unix 系统中非常常见。以下是 ZIP 命令的主要参数及其具体用法: #### 1. **基本语法** ZIP 命令的基本形式如下: ```bash zip [options] zipfile files... ``` 其中 `[options]` 表示各种可用的选项,`zipfile` 是生成的目标压缩文件名,`files...` 则表示需要被压缩的一个或多个文件或目录。 --- #### 2. **常用参数** ##### (1)**压缩单个文件或多文件** 可以直接指定一个或多个文件进行压缩: ```bash zip archive.zip file1.txt file2.jpg ``` 这条命令会将 `file1.txt` 和 `file2.jpg` 打包到名为 `archive.zip` 的压缩文件中[^1]。 ##### (2)**递归压缩整个目录** 使用 `-r` 参数可以递归地压缩整个目录及其子目录中的所有文件: ```bash zip -r directory_archive.zip /path/to/directory/ ``` 这里的 `/path/to/directory/` 中的所有文件和子目录都会被打包到 `directory_archive.zip` 文件中[^3]。 ##### (3)**删除原始文件** 如果希望在压缩完成后自动删除原始文件,可以使用 `-m` 参数: ```bash zip -rm archive.zip *.log ``` 此命令会在压缩 `.log` 类型的日志文件后将其从磁盘上移除[^3]。 ##### (4)**排除特定文件或目录** 通过 `-x` 参数可以排除不需要压缩的文件或目录。例如: ```bash zip -r project_backup.zip ./project/ -x "./project/cache/**" -x "*.tmp" ``` 上面的例子表明,除了项目根目录外,还会忽略掉 `./project/cache/` 下的所有内容以及所有的临时文件(`.tmp`)。注意,通配符需要用双引号包裹以防止 shell 过早解析[^2]。 ##### (5)**设置压缩级别** 默认情况下,ZIP 使用的是中级压缩水平(通常是等级 6),但可以通过 `-0` 至 `-9` 来调节具体的压缩强度。例如: ```bash zip -9 high_compression.zip large_file.bin ``` 此处选择了最高压缩级别 (`-9`) 对于较大的二进制文件进行了更深层次的空间节省尝试。 ##### (6)**加密压缩文件** 为了增加安全性,可以用 `-e` 参数为压缩后的档案添加密码保护: ```bash zip -er secure_data.zip sensitive_info.csv ``` 执行时会提示输入两次密码以便确认[^3]。 ##### (7)**安静模式** 有时候我们不想看到冗长的过程输出,则可以启用安静模式 `-q`: ```bash zip -qr quiet_mode.zip documents/ -x "*~" ``` 这样就不会有任何进度条或其他额外的信息打印出来。 ##### (8)**保留时间戳** 为了让压缩包内部记录各个成员项的确切修改时间和权限信息,推荐加上 `-o` 参数: ```bash zip -ro preserve_timestamps.zip old_files/ ``` 这有助于保持原样恢复环境的一致性。 --- #### 3. **高级功能** ##### (1)**跨平台兼容性转换** 当涉及到不同操作系统间的文本交换时,可能会遇到换行符差异问题。此时可通过 `-l` 参数解决: ```bash zip -lr dos_to_unix.zip windows_text_files/*.txt ``` 它会把 Windows 风格的 CRLF 自动转义成 Unix 单纯 LF 形式[^4]。 ##### (2)**自定义日期标记** 有时我们需要手动设定压缩包整体的有效截止日而非依赖当前系统时刻表,这时就要依靠 `-t` 开关了: ```bash zip -rt 12312023 year_end_report.zip reports/* ``` 上述语句意味着只有那些最后更新发生在 2023 年 12 月 31 日之前的报告才会被列入范围之内[^3]。 --- ### 总结 以上列举了一些常见的 ZIP 命令应用场景及相关联的重要标志位解释。每种需求都可以找到对应的解决方案组合起来满足复杂业务逻辑的要求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值