下午好, 我试图用awk进行以下乘法运算:
0 1 2 3
2 A21*A12 A21*A13 A21*A14
5 A31*A12 A31*A13 A31*A14
4 A41*A12 A41*A13 A41*A14
输入:
0 1 2 3
2
1
3
预期产出:
0 1 2 3
2 2 4 6
1 1 2 3
3 3 6 9
是否可以使用awk执行此操作?
答案 0 :(得分:3)
awk '
NR == 1 {n = split($0, a)}
NR > 1 {for (i=2; i<=n; i++) $i = a[i] * $1}
{print}
' input
0 1 2 3
2 2 4 6
1 1 2 3
3 3 6 9