使用 .tar 忽略文件 (#2) 从 tar 中排除目录

Exclude directories from tar with .tarignore file (#2)

这是在 this post of a similar name

的基础上重复 post

我无法使用此方法,所以我想弄清楚是我做错了什么,还是根本不起作用。

我在 ~ 主目录中创建了 .tarignore

内部 .tarignore 我尝试了很多东西,这是当前的尝试:

dirname/
dirname/*
/home/ubuntu/dirname/
/home/ubuntu/dirname/*
*.js

然后我从 ~ 主目录 运行 这个命令

tar -zcvf cur.tar.gz /home/ubuntu/dirname --exclude-ignore-recursive=.tarignore

我相信这应该不会导致任何东西得到 tar,但详细的输出显示 dirname/ 中的文件正在 tar',.js 个文件。

在这上面停留了一段时间,希望我只是在做一些愚蠢的事情:/

编辑:我 运行在 Ubuntu 18.04

所以我做错了什么 - 参数顺序不正确。我还根据@Cyrus 的评论切换到 --exclude-from,它似乎工作正常。

tar -zcvf cur.tar.gz --exclude-from=.tarignore /home/ubuntu/dirname

以及来自 .tarignore 文件的示例:

# Ignore these paths
build/*
node_modules/*
.git/*