我的文件包含以下数据:
Line 1: FILE_READER: TPT19222 Operator instance 1 processing file.
FILE_READER: TPT19222 Operator instance 1 processing file
FILE_READER: TPT19220 Directory scan completed. 2 files processed.
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19220 Directory scan completed. 3 files processed.
我想要unix脚本,它只返回数据
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19222 Operator instance 1 processing
FILE_READER: TPT19220 Directory scan completed. 3 files processed.
我想要unix脚本,它将返回包含“TPT19220”的最后一行和包含第二行的最后一行之间的所有行。
答案 0 :(得分:4)
您可以尝试此sed
,
sed -n '/TPT19220/,/TPT19220/{p}' yourfile | sed '1d'
答案 1 :(得分:2)
使用awk你可以说"给我一条线匹配模式1和一条线匹配模式2(包括)"与awk '/pat1/,/pat2/'
。
也许这就是诀窍(取决于你确切的开始/结束模式要求):
awk '/processing$/,/Directory scan completed/' inputfile