8、文件打包和压缩命令

打包和压缩的区别

打包

  • 定义: 将多个文件合并成一个文件,以减少文件个数。
  • 作用: 减少传输次数,也可以称为归档。
  • 术语: 打包 (pack)、解包 (unpack)。

压缩

  • 定义: 缩小一个文件的体积,以减少占用空间。
  • 作用: 减少文件体积。
  • 术语: 压缩 (compress)、解压缩 (decompress)。
  • 压缩率: 压缩后体积/压缩前体积。
  • 其他作用: 可以添加密码保护。

注意: 打包、解包、压缩、解压缩都需要消耗时间。

常见压缩格式

  • HTTP: gzip
    • gzip、deflate (zlib格式)、br (Brotli)、identity (不压缩)
  • Windows: zip、rar、7z
    • 常用工具: WinRAR, 360压缩, Bandizip, 7-Zip
  • Linux: gzip (tar.gz=.tgz)、bzip2 (.bz2)、zip

tar命令

常用选项

选项 作用 说明
-c 创建打包文件 create
-v 显示打包或解包的详细信息 verbose
-f 指定文件名称,必须放到所有选项后面 file
-z 压缩或解压缩 (.gz)
-j 压缩或解压缩 (.bz2)
-x 解包
-C 解压缩到指定目录

注意:

  • - 代表详细信息的显示,与其他选项组合使用。
  • -z-j 分别对应 gzip 和 bzip2 进行压缩/解压缩。
  • x 代表解包,与创建打包 (c) 相反。

用法示例

操作 命令
打包(不压缩) tar -cvf test.tar test/
解包 tar -xvf test.tar
打包并gz压缩 tar -zcvf test.tar.gz test/
解压(gz) tar -zxvf test.tar.gz
解压到指定目录(gz) tar -zxvf test.tar.gz -C aaa
打包并bz2压缩 tar -jcvf test.tar.bz2 test/
解压(bz2) tar -jxvf test.tar.bz2
解压到指定目录(bz2) tar -jxvf test.tar.bz2 -C aaa

请注意:

  • -C 选项用于指定解压缩的目标目录。
  • -z-j 分别用于指定使用 gzip 和 bzip2 进行压缩/解压缩。

其他操作

操作类型 命令 说明
仅查看不解压 tar -tf test.tar 列出压缩包内的所有文件名,而不解压缩包。
追加文件 tar -rf test.tar *.gif 向已存在的压缩包中追加所有 .gif 文件。
替换文件 tar -uf test.tar huaji.gif 更新压缩包中的 huaji.gif 文件,如果该文件不存在则添加。
加密 tar -zcf - *.txt | openssl des3 -salt -k 123456 | dd of=test.des3 将文件压缩并加密。
解密 dd if=test.des3 | openssl des3 -d -k 123456 | tar zxf - 解密并解压文件。

上述命令操作的详细说明:

  • 1、仅查看不解压:
    • tar -tf test.tar:列出压缩包 test.tar 内的所有文件名,而不解压缩包。
  • 2、追加文件:
    • tar -rf test.tar *.gif:向已存在的压缩包 test.tar 中追加所有 .gif 文件。
  • 3、替换文件:
    • tar -uf test.tar huaji.gif:更新压缩包 test.tar 中的 huaji.gif 文件,如果该文件不存在则添加。
  • 4、加密:
    • tar -zcf - *.txt | openssl des3 -salt -k 123456 | dd of=test.des3:首先将所有 .txt 文件压缩并通过 tar 打包,随后使用 openssl 进行 des3 加密,最后使用 dd 命令将加密内容输出到 test.des3 文件中。
  • 5、解密:
    • dd if=test.des3 | openssl des3 -d -k 123456 | tar zxf -:首先使用 dd 读取加密文件 test.des3,然后通过 openssl 解密,最后使用 tar 解压缩。

zip命令

用法示例

操作类型 命令 说明
压缩 zip test.zip *.txt 将所有 .txt 文件压缩成 test.zip。
解压缩 unzip test.zip 解压缩 test.zip 文件到当前目录。
解压缩到指定目录 unzip test.zip -d bbb 解压缩 test.zip 文件到指定目录 bbb,若目录不存在则创建。
添加密码 zip -rP 123456 test.zip *.txt 将所有 .txt 文件压缩成 test.zip 并添加密码 123456。
使用密码解压 unzip -P 123456 test.zip 使用密码 123456 解压缩 test.zip 文件。

上述命令操作的详细说明:

  • 1、压缩:
    • zip test.zip *.txt:将当前目录下所有 .txt 文件压缩成一个名为 test.zip 的压缩包。
  • 2、解压缩:
    • unzip test.zip:解压缩 test.zip 文件到当前目录。
  • 3、解压缩到指定目录:
    • unzip test.zip -d bbb:解压缩 test.zip 文件到指定的目录 bbb。如果目录 bbb 不存在,将会创建该目录。
  • 4、添加密码:
    • zip -rP 123456 test.zip *.txt:将所有 .txt 文件压缩成 test.zip,并设置密码为 123456。
  • 5、使用密码解压:
    • unzip -P 123456 test.zip:使用密码 123456 解压缩 test.zip 文件。
posted @   感觉小丑  阅读(50)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
点击右上角即可分享
微信分享提示