var1 = 6、var2 = 4変数に値を格納し、精度2で割って結果を変数に保存しようとしていますvar
。
var=`awk 'BEGIN {printf "%.2f\n", $var1/ $var2}'`
上記の作業を行うと
awk: cmd. line:1: fatal: division by zero attempted
誰かが私がここで正確に見逃していることを指摘できますか?
ありがとうございます!
ベストアンサー1
-v var=value
awkに変数を渡すために使用されます。
だから
awk -v var1="$var1" -v var2="$var2" 'BEGIN {printf "%.2f\n",var1/var2}'
与える
1.50
そして
var=$(awk -v var1="$var1" -v var2="$var2" 'BEGIN {printf "%.2f\n",var1/var2}')
値を設定します。
あなたはする必要があります
-v var1="$var1"
bashの$ var1をawkのvar1に変換するvar1
以下で使用awk
(必須ではない$
,$var1
var1=6 が$6
値である)(awkでBEGINを忘れます)echo
入力を提供するawk
(そうでなければ、awkは入力を待って中断されます)