我想僅打印以「select」開頭並以「;」結尾的段落,但應包含「IN cccc」,例如如果我有以下代碼使用awk或sed打印包含多於2個模式的段落
select aaaa
bbbb
IN cccc
;
select dddd
eeeee
IN ffff
;
select rrrr
eeeee
IN cccc
;
結果會是什麼樣
select aaaa
bbbb
IN cccc
;
select rrrr
eeeee
IN cccc
;
所以這裏是我以前awk '/^select*/,/^;/{if ($0 ~ /^IN cccc/) ; print}' inputfile
awk的,但我得到的結果是我的文件的全部內容
我用下面的awk,但@fedorqui似乎我錯過了某些「awk」/^select * /,/ ^;/{if($ 0〜/^IN cccc /);打印}'輸入文件 – malmo
您的問題是錯誤的分號放置。你的意思是'if($ 0〜/^IN cccc /){print};'當然,解決這個問題還不足以實現你想要做的事情。 –