ume

linux コマンド awk

awkコマンドとは

⇨標準入力に流れ込んだデータを処理することに専念する

コマンド1 | awk

この形で使用し、コマンド1の入力されたものを使ってawk内で加工する。

echo 100 200 | awk '{print $1}'
#出力100

$1 = 左のコマンド(100 200 )の1番目の値(100)という意味.

⚠️データの切れ目を空白文字やタブで判断している。

echo 1 00 200 | awk '{print $1}'
#出力1
echo 1 00 200 | awk '{print $2}'
#出力00

こんな感じで計算も可能.

echo 100 200 | awk '{s=$1+$2; print s}'
出力結果300

1~100の整数を全て足すと幾つになる?

seq 1 100  | awk '{s=s+$1; print $1, s }'
#出力5050

seq = 1~100までの数字を行として出力 $1に1行ずつ代入されていく

1
2
3
4
5
省略