6章データ処理
直前の章で、多くのデータを集めることができた。これらのデータは、フリーフォマットのテキスト、CSV、XMLなど、多種多様なフォーマットになっているだろう。本章では、これらの解析や処理を行い、分析に必要な情報を抽出する手法を説明する。
6.1 利用するコマンド
データ解析の準備を行うコマンドとして、awk
、join
、sed
、tail
、tr
を紹介する。
6.1.1 awk
awk
は単なるコマンドではなく、実質的にはテキスト処理用に設計されたプログラミング言語であり、awk
をテーマにした専門書籍がいくつも存在する。本書を通じてawk
についての詳細を解説していくが、ここでは簡単な例を示す。
6.1.1.1 主要なコマンドオプション
-f
- 指定したファイルから
awk
プログラムを読み込む。
6.1.1.2 コマンド実行例
例6-1に示す、awkusers.txt
というファイルを見てみよう。
awk
を用いて、姓がJones
となっているユーザの行を表示する。
$ awk '$2 == "Jones" {print $0}' awkusers.txt
Mike Jones
Kathy Jones
awk
は入力されたファイルの各行を順に処理し、(デフォルトではホワイトスペースによって区切られる)単語をフィールドに格納する。フィールド$0
は行全体を示し、$1
は最初の単語、$2
は次の単語を示す。awk
プログラムはパターンと、パターンにマッチした際に実行されるコードの組から構成されている。この例で、パターンはひとつだけであり、 ...
Get 実践 bashによるサイバーセキュリティ対策 ―セキュリティ技術者のためのシェルスクリプト活用術 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.