我想根据文件名搜索一系列文件。
这是我的目录:
例如我上面有文件。
我只想搜索没有_bak的文件。
答案 0 :(得分:45)
如果您想将搜索限制在当前目录中,请使用:
find . -maxdepth 1 -mindepth 1 ! -name '*_bak'
如果要在所有目录中递归查找,请删除-maxdepth 1
。
编辑以回应OP的评论
要获取以ei
开头并且不以_bak
结尾的文件,请使用:
find . -type f -name 'ei*' -a ! -name '*_bak'
答案 1 :(得分:6)
请试试这个:
find . -type f ! -iname "*_bak"
上面的命令将找到所有未以_bak结尾的文件。
答案 2 :(得分:-2)
使用Grep Invert Match选项。
例如,如果您想要所有没有单词_bak的文件,请使用:
grep -v *_bak /path/to/file