awk
awkで乱数を使いたい時は rand() 関数を使います。 $ echo | awk '{print rand()}' 0.827331 rand() は0~1までの乱数を発生させます。そのため、例えば1〜10までの値にしたい時は以下のように書く必要があります。 $ echo | awk '{print int(rand()*10)+1}' …
awkで文字列を結合したい場面は稀によくあると思います。awkでの文字列の結合方法は一般的なプログラミング言語とは違い、少し癖があります。というのも、awkには文字列を結合するための演算子がありません。他の言語では + とか concat とかが用意されてい…
awkでは入力をデフォルトで行単位のレコードとして読み込み、さらにそれをフィールドに分割します。フィールドは組み込み変数FS(Field Separater)で分割したモノであり、デフォルトはスペースとタブです。フィールドには左から順に$1, $2と番号が割り振られ…
awkを書く上で重要なパターンとアクションという独特な概念について紹介します。 パターンとアクションとは awkという言語にはパターン、アクションという2つの重要な概念があります。動作は単純明快で、「パターンにマッチしたレコードに対してアクションを…