htmlのあるタグからあるタグまでという感じで指定したキーワードから指定したキーワードまでの文字列を抽出する方法を以下に記します。
以下のようなhtmlファイルがあったとして、文字列を抽出します。
$ cat sample.html <html> <head> <title>hello world</title> </head> <body> hello konnichiwa nihao </body> </html>
sed -n '/キーワード/,/キーワード/p' ファイル名
または
cat ファイル名 | sed -n '/キーワード/,/キーワード/p'
以下の実行例は、<body>〜</body>を抽出しています。
/body>の/の前に\をつけてエスケープしています。
$ sed -n '/<body>/,/<\/body>/p' sample.html <body> hello konnichiwa nihao </body>
sed -n '指定行,/キーワード/p' ファイル名
または
cat ファイル名 | sed -n '指定行,/キーワード/p'
以下の実行例は上記のhtmlファイルを利用して7行目から</body>までを抽出しています。
$ cat sample.html | sed -n '7,/<\/body>/p' konnichiwa nihao </body>