制作 tar 存档时如何按名称递归排除文件夹?

制作 tar 存档时如何按名称递归排除文件夹?

我知道可以通过这样的命令排除特定的文件夹:

tar --exclude='/srv/www/project/node_modules' -zcvf /backup/project.tgz .

我的问题是如何排除node_modules整个/srv/www目录中任何地方命名的任何文件夹,排除它并排除其下的所有文件夹?

答案1

要排除名为目录的目录,node_modules无论它位于何处,/srv/www/即使在不同的子目录下有它的多个副本,只需不要在部分中指定路径--exclude并像这样使用它:

tar -zcvf /backup/project.tar.gz --exclude "node_modules" /srv/www/

这将排除所有名称完全相同的目录和文件node_modules以及其下的所有子目录和文件/srv/www/

相关内容