2017-03-18 6 views
0

からパラメータとして渡された合計欄:私は列が合算されるので、その少しを編集したいAWK - 私は最終的にこれに呼び出すbashスクリプトを書きましbashスクリプト

awk 'BEGIN { print "Calculate sum of column: "} { sum += 5; print $0 } { print "Sum of column:", sum, "\n"}' 

bashラッパー・スクリプトからパラメーターとして渡されます。

awk -v var="$column" 'BEGIN { print "Calculate sum of column: "} { sum += var; print $0 } { print "Sum of column:", sum, "\n"}' 

が、それはbasicly期待されているのと同じ数xのNRを、追加します。私は試してみました。何を私が知らないことはようにする方法である:それは列番号をキャッチするよう

sum += var 

sum += $var. 

に変換します。

これまでのところ私が試しまし:

awk -v var="$column" 'BEGIN { PRINT "Sum:" } { sum += $var; } END { print sum } FILE_IN > FILE_OT 

誰かが助けてもらえますか?

+0

'sum + = $ var'を試しましたが動作していませんか? –

+0

はい、私は試している正確な行を追加しています。 – onlyf

答えて

1

これは再現できません。申し訳ありません。列が割り当てられている場合、正常に動作するはずです。

$ column=5;echo "a b c d 15 f" |awk -v var="$column" 'BEGIN { print "Sum:" } { sum += $var; } END { print sum }' 
Sum: 
15 

PS:大文字では印刷しません。

ファイルあり。

$ cat file11 
a b c d 15 f 
$ column=5;awk -v var="$column" 'BEGIN { print "Sum:" } { sum += $var; } END { print sum }' file11 
Sum: 
15 
+0

それは猫とあなたのやり方をしましたFILE_IN | awk ...、あなたの返信のおかげでΓιωργο! – onlyf

+0

猫は理由がありません –

+0

@onlyfファイルでテストを参照してください。あなたはawkで猫が必要ない –

関連する問題