awk コマンドでファイルの一部分だけを抜き出す方法


awk コマンドでファイルの一部分だけを抜き出す方法

awk コマンドを使うと、ファイルの中の一部のテキスト段落だけを抜き出すことが出来ます。

抜き出したいテキスト段落の最初の文字列と最後の文字列を指定すると、指定した最初の文字列から指定した文字列までの間のテキストだけを抜き出すことが出来ます。




テスト用のファイルを準備

以下のようなテキストファイルを用意します。このファイルの中の "あああああ" から "おおおおお" までの文字列だけを抜き出したいと仮定しましょう。

$ cat test.txt
11111
22222
33333
44444
55555
あああああ
いいいいい
ううううう
えええええ
おおおおお
66666
77777
88888
99999


awk コマンドを使ってテキスト段落を抜き出す

先に作成した test.txt ファイルに対して以下のように awk コマンドを実行します。

awk '/開始文字列/,/終了文字列/' ファイル名

では実際にファイルの中の "あああああ" から "おおおおお" までの文字列だけを抜き出してみます。
$ awk '/あああああ/,/おおおおお/' test.txt
あああああ
いいいいい
ううううう
えええええ
おおおおお

意図した通りファイルの中のテキスト段落 (ファイルの中の "あああああ" から "おおおおお" までの文字列) を抜き出せています。