Unix 查找包含星号或破折号字符的所有文件
我想搜索系统中具有特殊字符的所有文件。原因是我从Linux迁移到Mac,exfat文件格式没有复制名为“A*STAR presentation”的文件夹。所以我想手动查找未复制的文件和文件夹。我怀疑诸如-之类的字符也可能不受支持 问题是Unix 查找包含星号或破折号字符的所有文件,unix,find,Unix,Find,我想搜索系统中具有特殊字符的所有文件。原因是我从Linux迁移到Mac,exfat文件格式没有复制名为“A*STAR presentation”的文件夹。所以我想手动查找未复制的文件和文件夹。我怀疑诸如-之类的字符也可能不受支持 问题是*是查找函数中的通配符。因此,我正在寻找一种将*用作普通字符的方法 find -name *'*'* ./ or something similar? 设法 祝你好运 试着 find . -name '*[\**]*' 祝你好运 将find输出到grep比使用
*
是查找
函数中的通配符。因此,我正在寻找一种将*
用作普通字符的方法
find -name *'*'* ./ or something similar?
设法
祝你好运 试着
find . -name '*[\**]*'
祝你好运 将
find
输出到grep
比使用find
的-regex
选项更快。因此,使用此命令查找具有特殊字符的所有文件*
和/或-
:
find $PWD | grep -E '[*-]+'
或者,如果不需要完整路径:
find . | grep -E '[*-]+'
以下是我在测试目录中的文件:
$ ls -1
*another
another normal
normal
special *
special -
very*good
让我们找到一些特别的:
$ find . | grep -E '[*-]+'
./*another
./special *
./special -
./very*good
通过管道将
find
输出到grep
比使用find
的-regex
选项更快。因此,使用此命令查找具有特殊字符的所有文件*
和/或-
:
find $PWD | grep -E '[*-]+'
或者,如果不需要完整路径:
find . | grep -E '[*-]+'
以下是我在测试目录中的文件:
$ ls -1
*another
another normal
normal
special *
special -
very*good
让我们找到一些特别的:
$ find . | grep -E '[*-]+'
./*another
./special *
./special -
./very*good