当读入shell时,我有一个类似这样的数据的csv文件:
name,income,reward,payment
Jackson,10000,2000,1000
Paul,2500,700,200
Louis,5000,100,1800
Run Code Online (Sandbox Code Playgroud)
我想找到每个人的净收入,使用公式:“净=收入+报酬-支付”。
当我使用命令执行此操作时,它只计算第一行数据。
$ cat data.csv | awk -F ',' '{for (i=1;i<=NF;i++) net[i] = $2+$3-$4} END {for (p in total) print p, "net = ", net[p]}' > result.txt
Run Code Online (Sandbox Code Playgroud)
我如何在这里进行计算?
顺便说一下,名称不是唯一的,所以我尝试(for 循环)为数组 [net] 创建索引。
我的预期输出是:
1 Jackson net = 11000
2 Paul net = 3000
3 Louis net = 3300
Run Code Online (Sandbox Code Playgroud)