使用 tar 排除与模式匹配的一个目录(但不排除其他目录)

使用 tar 排除与模式匹配的一个目录(但不排除其他目录)

我正在为一个网站制作一个非常简单的 tar,但有一个问题。这是该网站的文件结构:

...
文件/
图片/
图片/访客/
...
日志/
...
访客/

问题是:我想排除主访问者/目录中的所有文件,但我希望包含 images/visitors/ 目录中的所有文件在 tarball 中。

我一直尝试tar c --exclude-from='excludeList'使用以下内容作为“excludeList”的内容:

排除
列表文件/
访客/

不幸的是,由于 images/visitors/ 中的文件与 visitors/ 模式匹配,因此它们也被排除在外。在理想情况下,我可以使用类似这样的正则表达式:

排除
列表文件/
^访客/

但那行不通。有什么方法可以让它工作吗?是直接通过 tar 还是使用另一种模式匹配命令?

答案1

尝试该--anchored选项。

相关内容