awk > 引数を渡す方法
更新日
2012-05-13
広告
awkのプログラムに、引数を渡す方法を紹介します。
引数を渡すためには、-vオプションを使います。-vオプションのフォーマットは以下のようになります。
-v 変数名=値これで、awkプログラムから、指定した変数を利用できます。
では、以下のサンプルファイル sample.dat を使って試してみます。
1 10 100 2 20 200 3 30 300各値に、引数で渡した変数(multi)を掛け算して、出力してみます。
$ awk -v multi=1 '{ print $1 * multi " " $2 * multi " " $3 * multi;}' sample.dat 1 10 100 2 20 200 3 30 300
$ awk -v multi=2 '{ print $1 * multi " " $2 * multi " " $3 * multi;}' sample.dat 2 20 200 4 40 400 6 60 600
$ awk -v multi=3 '{ print $1 * multi " " $2 * multi " " $3 * multi;}' sample.dat 3 30 300 6 60 600 9 90 900
複数の引数を渡したい場合は、「-v 変数名=値」を繰り返し指定すればよいです。
$ awk -v a=1 -v b=2 'BEGIN{ print a; print b; }' 1 2こんな感じです。
広告
お問い合わせは sweng.tips@gmail.com まで。