假設多行文本文件file
。如果滿足不同行上的兩個條件,則刪除行
$cat file
foo bar baz
foo bar baz qux
foo bar baz quux # Line to be deleted
foo bar quux
我希望刪除所有那些fullfill兩個條件線:(a)該行包含關鍵字「QUUX」,和(b)的線是立即由包含一個線preceeded關鍵字「qux」。
$cat file | sought_command
foo bar baz
foo bar baz qux
foo bar quux
我很茫然作爲UNIX工具可以應用到這樣的雙重條件(可能AWK,但我不確定),並希望建議。
編輯1: 一旦被通知awk
是使用工具和在考慮的任務進一步,我要找專門爲代碼,可以很容易地被修改,使得條件(b)可以反轉(即, 「(b)如果有必要,該行不會立即包含關鍵字'qux'」的行)。
無需不知所措:S /老/新=> sed和克/ RE/P => grep和別的(例如。)=> awk。現在 - 你在尋找字符串還是正則表達式比較以及部分或全部匹配? –