我知道我可以使用
搜索文件find . -name *x*
...这将找到包含x
字符的所有文件。但是,如何查找包含[
,]
,*
或?
字符的所有文件?
最好避免重复,以便我可以将同一个命令传递给文本文件。
答案 0 :(得分:4)
您可以在glob
命令中使用find
模式,如下所示:
find . -name '*[][*?]*'
上面会找到名称中包含以下任何字符的文件:
]
[
*
?
-name
选项中提供的模式非常重要,这样shell就不会尝试扩展它。]
[
之前保留[...]
也很重要
答案 1 :(得分:0)
你也可以这样做:
find . * | grep -P "[\[\]*?]"
答案 2 :(得分:0)
find
有-regex or -iregex
选项,它接受正则表达式。你需要的只是构建一个简单的正则表达式。