在UNIX中,如何将total的新列添加为两列之和?
我有一个平面锉刀在UNIX中,如何将total的新列添加为两列之和?,unix,awk,Unix,Awk,我有一个平面锉刀 physics chem 10 20 12 12 10 10 我想再增加一列总分,其中包括物理和化学的总分。试试这一行: awk '$0=$0"\t"(NR==1?"total":$1+$2)' file 我觉得@Kent的答案很难读懂。我会写信的 awk 'NR==1 {val = "total"} NR > 1 {val = $1+$2} {$(++NF) = val; print}' file | column -t
physics chem
10 20
12 12
10 10
我想再增加一列总分,其中包括物理和化学的总分。试试这一行:
awk '$0=$0"\t"(NR==1?"total":$1+$2)' file
我觉得@Kent的答案很难读懂。我会写信的
awk 'NR==1 {val = "total"} NR > 1 {val = $1+$2} {$(++NF) = val; print}' file | column -t
嗨,雷克斯!欢迎为了帮助您,请让我们知道这是什么类型的文件(是平面文件还是电子表格?)。您是如何写入文件的,您使用的是程序、脚本还是其他什么?如果您使用的是程序或脚本,那么您可以发布代码吗?告诉我们more@ChadMcGrath因为这个问题是用awk和unix标记的,所以我不认为这是一个Micro$oft格式的文件。awk标记是在Rex编辑了这个问题后添加的,正如我在评论中要求他那样(你可以在编辑的链接中看到)。平面文件和电子表格不是Windows特有的,它们是适用于许多平台的通用术语,包括unix。感谢您的回答。欢迎回到SO!你一直很安静。