Grep如何抓取前一行後兩行 - Linux

Table of Contents



不好意思...我使用的是UNIX系統

我想請問一下...


我記得抓關鍵字"AAA"..單行的指令應該是

grep "AAA" data.txt > result.txt

會搜尋data.txt內的"AAA"的那行關鍵字...並且存在result.txt

但是我希望能夠取這關鍵字的前一行...和後兩行...(包含AAA的關鍵字那行)

總共需要四行...請問要如何用...


有網友提供過...加入-B1 -A2參數...可以達成...

但是我測試過 grep -B1 -A2 "*AAA*" data.txt > result.txt


但是系統卻顯示無法辨識...-B1 -A2...
而且我測試 man grep 也找不到..(但可能我英文不好..)_

想請各位網友...在提供一下...是否有其他方法...

還是有其他指令可以達成呢 ...謝謝


--

All Comments

William avatarWilliam2010-10-29
Tristan Cohan avatarTristan Cohan2010-10-30
樓上..請問你打的意思是???
Hamiltion avatarHamiltion2010-11-02
文章代碼,請整串複製後,按←回到文章列表,按右鍵貼上
Charlie avatarCharlie2010-11-05
grep -A 2 -B 1 "AAA" data.txt > result.txt 應該是不能用
Hedwig avatarHedwig2010-11-06
他會說無法辨識2和1
Wallis avatarWallis2010-11-09
awk不是更好用嗎~~