我有一个日志文件,我需要检查其中是否有任何错误消息,如果有,请将错误消息提取到另一个文件。
像这样,我可能有错误文件,不同的文件有不同的日志模式。那么如何使用变量搜索匹配模式呢?
因为我想.sh
为所有日志文件创建一个通用文件。假设我有一个文件,我想在其中搜索图案并在另一个文件中打印$pat1="ERROR MESSAGE"
$pat2="RAISE_ERROR_SEEN"
。我想要文件中的所有行黑白这两种模式。
仅使用变量。
答案1
尝试这个,
awk "/""$pat1""/,/""$pat2""/" test.log | grep -v "$pat3" > Error.bk
$pat1
将打印和之间的上下文$pat2
- 由于第一个变量中有空格,因此使用双引号两次。
答案2
用更简单的方式:
grep -e "$pat1\|$pat2" filename > resultfile