Ubuntu Grep命令-列表文件以字符串和扩展名开头

Ubuntu Grep命令-列表文件以字符串和扩展名开头,ubuntu,grep,command,Ubuntu,Grep,Command,我正在尝试使用grep对文件夹中的.log文件列表进行grep 我已尝试执行以下命令 ls | grep "gen.*" --include =\*.log | wc -l 但是上面的命令也计算其他文件类型。我有.txt和.html以及.doc文件启动gen。它也在计算那个文件。有什么建议吗?也许可以试试这个: find-f类-iname“gen.*.log”| wc find很容易用于搜索文件名,而grep主要用于搜索内容 您的版本无法工作,因为您的grep使用ls的输出进行搜索--incl

我正在尝试使用grep对文件夹中的.log文件列表进行grep

我已尝试执行以下命令

ls | grep "gen.*" --include =\*.log | wc -l

但是上面的命令也计算其他文件类型。我有.txt和.html以及.doc文件启动gen。它也在计算那个文件。有什么建议吗?

也许可以试试这个:

find-f类-iname“gen.*.log”| wc

find很容易用于搜索文件名,而grep主要用于搜索内容

您的版本无法工作,因为您的grep使用
ls
的输出进行搜索--include和--exclude将与递归grep(grep-r)一起使用

如果您仍然想使用grep,则如下所示:


ls | grep-e'^gen.*log'| wc-l

尝试
ls-lR gen*.log | wc-l
或,
查找-mindepth 1-maxdepth 1-type f-name“gen*.log”-printf x | wc-c
另一个想法:
查找-mindepth 1-maxdepth 1-type f-regex“*/gen\(\.[^/]*\)?\.log$”-printf x|wc-c