查找语句+ -exec -rm -r不起作用,语法问题? / bash

时间:2017-11-08 13:52:59

标签: linux bash

我对此声明有疑问,不知道为什么它不起作用,可能有语法问题但无法弄清楚在哪里。脚本应该找到名称为@tmp的目录或带点的数字,并在找到匹配后删除它们。但它没有发生。

   find /home/user/data/ -type d \( -name "*@tmp" -o -regex "[0-9\.\/]+" \) -exec rm -r {} \;

1 个答案:

答案 0 :(得分:3)

您正在寻找:

find . -type d \( -name '*@tmp*' -o -regex '.*/[0-9.]+' \) ...

@t要求对它们进行转义,并且正则表达式匹配整个路径,因此您需要匹配主要元素。