使用GNU find -regex查找长文件名

时间:2010-08-31 11:51:42

标签: file shell find gnu

我正在尝试使用以下命令查找目录中的所有长文件名:

find . -regex './[^/]\{5,\}.txt' 

根据GNU查找文档,-regex默认使用emacs regex。所以这应该给我所有超过5个字符的文件(不包括扩展名)。不幸的是它不起作用。它什么都不匹配。我尝试了这个主题的各种变化但无济于事。有任何想法吗? GNU发现根本不支持重复限定符吗?

2 个答案:

答案 0 :(得分:3)

添加

-regextype posix-extended

并且无需转义{ }

find . -regextype posix-extended -regex './[^/]{5,}.txt' 

答案 1 :(得分:2)

为什么这么复杂?

find /path -type f -iname "??????*.txt"