問題一覧に戻る
中級テキスト処理
問題32: awk - パターンスキャンと処理

awkは、テキストファイルのパターンスキャンと処理を行うプログラミング言語です。各行をフィールドに分割し、条件に基づいて処理を実行できます。データの抽出、フォーマット変換、簡単な集計処理に最適で、CSVファイルやログファイルの解析に広く使用されています。

# 2番目の列を出力
'{print $2}' data.txt

# 3列目が100より大きい行の1列目と3列目を出力
'$3 > 100 {print $1, $3}' sales.txt

# 4列目の合計を計算
'{sum += $4} END {print sum}' numbers.txt

# コロンを区切り文字として使用
':' '{print $1, $3}' /etc/passwd