sed输出特定行


有什么方法使用sed输出匹配字段的上一行、两行或三行,而不输出匹配行。

趣味 shell

Eango 11 years, 11 months ago
   
  //aaa.log
  
aadd
aadfds
67891
abcde
fghijkl
12345
67890
adafs22
111112

//匹配上一行:
sed -n '/12345$/{g;1!p;};h' aaa.log

//匹配两行
sed -n ':a
/12345$/{p;q;}
$!N;4,$D;ba' aaa.log

//匹配三行

sed -n ':a
/12345$/{p;q;}
$!N;5,$D;ba' aaa.log

q2a5a5 answered 11 years, 11 months ago

Your Answer