46

我想根据文件名搜索一系列文件。

这是我的目录:

在此处输入图像描述

例如,我有上面的文件。

我只想搜索没有_bak的文件。

4

3 回答 3

66

如果您想将搜索限制在当前目录,请使用:

find . -maxdepth 1 -mindepth 1 ! -name '*_bak'

如果要在所有目录中递归查找,请删除-maxdepth 1.


编辑以回应OP的评论

要获取以 use 开头ei和不以_bakuse 结尾的文件:

find . -type f -name 'ei*' -a ! -name '*_bak'
于 2012-06-15T02:34:31.473 回答
6

请试试这个:

 find . -type f ! -iname "*_bak"

上述命令将查找所有不以_bak 结尾的文件。

于 2012-06-15T02:40:34.347 回答
-2

使用 Grep 反转匹配选项。

例如,如果您想要所有文件不包含单词 _bak,请使用:

grep -v *_bak /path/to/file
于 2012-06-15T02:29:27.230 回答