awk

【awk】「列毎に別処理」or「特定の列のみに処理」

【awk】「列毎に別処理」or「特定の列のみに処理」

シェルスクリプトで列毎に別処理を行ったり、特定の列のみに処理を行いたいときがある。 for文やwhile文で行うのも手だが、アクセスログなどの大きいデータを処理する時には時間がかかってしまい使い物にならない。 awkを用…
awkでOSコマンドを使う

awkでOSコマンドを使う

こんな感じで使える。 awkの変数はダブルクオートで囲む。 echo “TEST” | awk ‘{system(“echo “$1″”)}’
awkのFS(field separator)

awkのFS(field separator)

awkコマンドの-Fオプションについて awkコマンドに-Fオプションを指定することで、FS(field separator)を指定することができる。 FSのデフォルトは、スペースとなっている。 nishi &#8221…
[awk]変数を代入する

[awk]変数を代入する

-vオプションを使用します。 STRING=”hoge hoge huga” echo $STRING | awk -v my-string=${STRING} ‘{print my-string}’
awkのバグ(最小値を求める)

awkのバグ(最小値を求める)

awkで最小値を求める awkで最小値を求める際バグで改行が計算結果に入ってしまう場合がある。 その時は以下のように、最初に空行を削除してソートを行い、1行目を取り出すことで最小値を求めることができる。 awk ‘{pr…
awkの中でシェルの変数を使う

awkの中でシェルの変数を使う

awkコマンドでは、パターンとアクション部分に分かれており、今回はパターンでの変数の使用方法になる。 awkコマンドでは、そのままでは変数として認識しないため以下のようにする。 ‘${変数名}’ また変数はそのまま代入さ…
特定の行から特定の行までを抽出する

特定の行から特定の行までを抽出する

テキストファイルを操作する場合や複数行の文字列を操作する時、awkコマンドを用いることである特定の文字列が含まれる行から別の特定の文字列が含まれる行までを抽出することができます。 例えば、BEGINが含まれる行からEND…