在 deja-dup 中匹配排除列表的正则表达式

在 deja-dup 中匹配排除列表的正则表达式

看来 deja-dup 在通过 dconf-editor 将条目添加到 org.gnome.DejaDup.exclude-list 时不接受正则表达式。有没有解决方案允许对此参数进行路径的正则表达式匹配?

答案1

不,deja-dup 不支持正则表达式,目前也没有解决方法。您需要明确指定文件夹。

答案2

虽然它不支持正则表达式,但您可以通过在文件夹中添加 .deja-dup-ignore 文件来排除特定文件夹。这里有一个脚本,它将把这个文件添加到任何匹配的文件夹中,下面定义为“ignoreFolder”。根据需要进行自定义。请注意,下面的示例忽略了“node_modules”文件夹,但它不会比它在任何层次结构中找到的第一个父 node_modules 文件夹更深(即,它不会在其子依赖项下递归添加它,因为它不需要)。那里的 mindepth/maxdepth 只是为了加快查找速度,但可以随意删除。

自定义:

-将 startPath 更改为您希望脚本从中运行的文件夹(即 /home/rw3iss/Sites)

-将 ignoreFolder 更改为您想要忽略的文件夹模式(即 node_modules')

-如果您不需要它忽略子依赖目录,只需删除“-not -regex”。$ignoreFolder。$ignoreFolder.*”' 位。

startPath=/home/rw3iss/Sites
ignoreFolder=node_modules

find $startPath -mindepth 1 -maxdepth 5 -name "$ignoreFolder" -type d -not -regex ".*$ignoreFolder.*$ignoreFolder.*" | while read fname; do
  echo "" > "$fname/.deja-dup-ignore"
  echo "$fname/.deja-dup-ignore created."
done

要旨:https://gist.github.com/rw3iss/1db5d19a85470f2646ee2a1da1cf9fc5

相关内容