[問題] sed 如何搜尋關鍵字後插入後兩行

看板Linux作者 (熱~)時間11年前 (2015/02/10 22:36), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
想請問一下, 我知道用sed可以: sed -i '/abcde/a ABCDE' test.dat 搜尋 abcde 這個關鍵字所在的行, 然後把 ABCDE 這個字串插入下一行, 那有沒有甚麼方法可以插入關鍵字所在的行之下兩行(或n行)呢, 譬如 abcde 是在第 10 行, 我想把 ABCDE 插入變在第 12 行的地方, 謝謝各位! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.66.250.7 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1423578965.A.82E.html

02/11 00:06, , 1F
請改用awk
02/11 00:06, 1F

02/11 00:22, , 2F
sed -i '/abcde/{N;s/$/\nABCDE/}' test.dat
02/11 00:22, 2F

02/11 00:24, , 3F
下三行就用N;N,依此類推... 不過用 awk 會比較方便
02/11 00:24, 3F
文章代碼(AID): #1KsXTLWk (Linux)