Lihaoya's blog

tar 命令中 -C 参数的作用

Published at December 23, 2024, last modified at December 24, 2024

tar 是一个常用的打包工具,其中 -C 参数会影响打包结果的目录结构。

本文将通过几个例子,解释这个参数的作用。

1. 基本概念

tar 命令的 -C 参数用于切换目录,会改变打包时的相对路径。

2.目录结构示例

假设有以下目录结构:

project/
└── target
    └── x86_64-apple-darwin
        └── release
            └── cli

3. 不使用 -C 参数

执行以下命令:

tar -czf output.tar.gz target/x86_64-apple-darwin/release/cli

解压后的结构:

target/
└── x86_64-apple-darwin/
    └── release/
        └── cli

这种方式会保留完整的目录层级。

4. 使用 -C 参数

执行以下命令:

tar -czf output.tar.gz -C target/x86_64-apple-darwin/release cli

解压后的结构:

cli

使用 -C 参数后,tar 会:

  1. 先切换到指定目录
  2. 再从该目录开始打包文件

5. 实际应用

5.1 发布二进制文件

在发布软件时,通常使用 -C 参数:

5.2 备份文件

备份时通常不使用 -C 参数:

6. 总结

7. 参考链接


Comments

Leave a Comment