awkでスケールバーを使用する方法は?

awkでスケールバーを使用する方法は?

文字が来ました。 3つの列で構成されています。

1. student number
2. midterm grade
3. final grade

variable=$(cat $1 | awk 'NR=='$j' {print (($2+$3)/2)}' ) 

3桁の数字の後に結果を取得するには:

Example: 123123  50  55
result: 52.500

各結果が50より大きいことを確認したいと思います。

答え1

私は提供する:

awk '{ printf("%.3f\n", ($2+$3)/2 ) }' example.txt

出力:52.500

答え2

自分よりランクの高い人にマッチングするには、50次の手順を実行します。

awk '{sum=($2+$3)/2 ; split(sum,a,"."); if(a[1] > 50) printf("%.3f\n", sum)}' grades

結果をsum変数に保存します。split関数を使用して.点の前の最初の部分を一致させ、結果を印刷します。

学番を印刷するには、printf次のように行を変更します。

printf("Student: %s\t%.3f\n", $1, sum)

関連情報