tar 创建归档并用 --exclude 排除路径

用 tar -czf 打包目录,同时通过 --exclude 跳过日志、依赖和缓存目录。

Linux备份归档tar 归档低风险
执行 tar -czf 输出.tar.gz --exclude='模式' 目录,即可创建 gzip 归档并跳过匹配排除模式的文件。

01命令

命令
$ tar -czf backup.tar.gz --exclude='*.log' --exclude='node_modules' /var/www/site

02作用说明

大多数教程只讲解压,忽略了创建时的选项:--exclude 接受对每个成员名做匹配的 shell 通配符(可以重复出现),且它的位置很重要——要放在目录参数之前才会作用于创建操作。-c 创建、-z gzip 压缩、-f 指定文件三件套就是全部;再加 -C / 可以控制归档内保存的路径形式,而这决定了解压时文件会落在哪。

03风险

风险低风险
!注意: 排除模式匹配的是完整成员路径——请写 --exclude='dir/node_modules' 或谨慎锚定模式,否则可能排除掉意料之外的内容。

04撤销

撤销
$ tar -xzf backup.tar.gz -C / (extracts back to original paths)

05来源

  • tar(1) — Linux manual page
    man7.org · technical · 2026-09-17
    依据: Documents -c create, -z gzip filter, -f file, and --exclude=PATTERN with glob matching against member names
  • tar(1) — Arch Linux manual
    Arch Linux · technical · 2026-09-17
    依据: --exclude=PATTERN excludes files matching the glob pattern during archive creation

最后验证: 2026-09-17 · 分类: 文件与文件夹

06相关方案