gpt4 book ai didi

linux - 如何使用带列名的awk创建列

转载 作者:太空狗 更新时间:2023-10-29 11:12:46 25 4
gpt4 key购买 nike

我有如下的csv文件

 Name    Amount     Interest
JB 10000 0.5
Jefh 50000 1.25
John 20000 0.25

我想像下面这样使用 awk 添加一列

Name    Amount     Interest    Total Interest
JB 10000 0.5 50
Jefh 50000 1.25 625
John 20000 0.25 50

我正在使用以下命令来实现这一点

awk -F, '$8 > 0 {print $1,",",$2,",",$3,",",$2*$3}

但我得到如下输出,因为它也在乘以第一行

Name    Amount     Interest     0
JB 10000 0.5 50
Jefh 50000 1.25 625
John 20000 0.25 50

如何添加列名而不是 0

最佳答案

作为第一个 awk 命令添加:

NR==1 {print $0,"Total_Interest"; next}

这将仅在输入的第一行起作用,打印一个字符串,然后跳转到下一行/记录

因此,整个调用应该看起来像这样:

awk -F, 'NR==1 {print $0,"Total_Interest"; next}
$8 > 0 {print $1,",",$2,",",$3,",",$2*$3}' input

关于linux - 如何使用带列名的awk创建列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37554590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com