Regex 如何查找名称中带有方括号的文件

Regex 如何查找名称中带有方括号的文件,regex,linux,find,Regex,Linux,Find,我试图找到一些方括号内的文件,但似乎无法正常工作 我的文件名如下: [ABC]测试文件.txt 我正在尝试: find . -iregex '\[abc\].*test.*' 因为某种原因,这似乎不起作用。如果我将其替换为- find . -iregex '.*abc.*test.*' -它很好用。所以问题在于方括号。有什么想法吗?没有匹配的方括号不是问题。问题是匹配文件的路径。记住,对于当前路径,find的输出以/开头 因此,find命令中的这个正则表达式适用于您: find . -ire

我试图找到一些方括号内的文件,但似乎无法正常工作

我的文件名如下:

[ABC]测试文件.txt

我正在尝试:

find . -iregex '\[abc\].*test.*'
因为某种原因,这似乎不起作用。如果我将其替换为-

find . -iregex '.*abc.*test.*'

-它很好用。所以问题在于方括号。有什么想法吗?

没有匹配的方括号不是问题。问题是匹配文件的路径。记住,对于当前路径,find的输出以
/
开头

因此,find命令中的这个正则表达式适用于您:

find . -iregex '\./\[abc\].*test.*'

如果这个答案帮助你解决了问题,请考虑把它标记为“被接受”,这样将来面对类似问题的用户将能够轻松地看到它。我知道这样的礼仪,在问题解决后不久我就睡着了:P