目录中有许多文件(来自 Java 应用程序的日志 - 每行一个记录),我想列出包含搜索字符串的所有文件名,并列出该字符串在特定文件中的所有出现情况。
到目前为止我一直在使用这个。在这里我得到文件名,下面我得到匹配的行,但我不知道文件名匹配的行来自哪个文件名。
#!/bin/bash
cd ${DIRECTORY}
clear
echo 'WARNINGS'
egrep -l "WARN" * | sort
echo ''
cat * | grep 'WARN'
Run Code Online (Sandbox Code Playgroud)
我需要列出所有文件名(但仅限于包含 WARN 的文件名),并且对于所有这些匹配的文件,显示特定文件中带有 WARN 字符串的所有行。