unix shell
複数行にわたるgrep検索
どうやら1行ごとに処理するのがunixの思想らしく、grepも特定の一行にしか適用できません。日本語でWEB検索しても出てこなかったのだけれども、英語で検索したら一発で出てきた。複数行を正規表現で検索するには、pcregrepを使うと良いよー。
pcregrep -M 'abc.*(\n|.)*efg' test.txt
元ネタ:http://stackoverflow.com/questions/2686147/how-to-find-patterns-across-multiple-lines-using-grep