【linux】awk相关

【linux】awk相关

大家好,又见面了,我是你们的朋友全栈君。

按字段相加文本内容

a 3
b 4
c 5
a 8
d 2
c 6

将上面内容中字段相同的数据相加

awk -F ' '  '{sum[$1]+=$2}END{for(i in sum){print i, sum[i]}}'  test.txt

结果:

a 11
b 4
c 11
d 2

按字段拼接两个文本

文本1:

a 3
b 4
c 5

文本2:

a high
c middle
b low

根据第一个字段拼接两个文本

awk '{if(NR==FNR){x[$1]=$2}else{x[$1]=x[$1]" "$2}}END {for(i in x){print i, x[i]}}' test1.txt test2.txt 

结果:

a 3 high
b 4 low
c 5 middle

注:
NR: 表示从所有文件中已读取的行数。
FNR:表示当前文件中已读取的行数。
举个栗子:
有两个文件,第一个文件有10行,第二个文件有15行。在读第一个文件的第5行时,NR=5,FNR=5。在读第二个文件的第8行的时候,NR=18,FNR=8。
所以NR==FNR表示在读取第一个文件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107426.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 远程过程调用(RPC)

    远程过程调用(RPC)

    2021年9月1日
    46
  • JavaFX菜单ContextMenu使用

    JavaFX菜单ContextMenu使用在开发应用的过程中 想做一个类似下面截图的功能 点击菜单按钮之后 在下面显示下拉面板 该截图是华为 Hisuite 客户端 通过 ContextMenu 可以实现该功能 首先定义 GlobalMenu 继承 ContextMenu 显示这些功能选项 packagecom nii desktop widget menu importjavafx scene control ContextMe

    2025年8月28日
    0
  • 史上最牛逼的CDH安装部署来了 亲测有效

    cdh安装部署错误史上最低可以试试

    2022年4月3日
    37
  • 用导数的定义求指数函数的导数_对数函数导数的推导

    用导数的定义求指数函数的导数_对数函数导数的推导指数函数的性质  先来复习一下中学的课程:指数函数的导数  对f(x)=ax求导:  ax右侧的那个极限似乎没有办法继续简化了,如果这个极限看作关于a的函数(之所以将极限看作关于a的函数,是因为在这个极限中,a是未知的,Δx是已知的):  函数在某一点导数的几何意义是该点处切线的斜率,所以M(a)也就是ax在x=0处切线的斜率。  如果y=2x,…

    2025年8月5日
    2
  • C#–winform界面美化[通俗易懂]

    C#–winform界面美化[通俗易懂]1、工控上位机界面总结(参考贴:https://blog.csdn.net/zqrhzyj/article/details/76638948)一般的工控界面分成三部分:(1)、标题菜单部分,即项目名称、界面菜单等(2)、数据显示及按钮等部分,即图形显示区,可以显示工艺流程图,采集到的相关数据信息、控制按钮等。(3)、尾部部分,可以添加公司的相关信息等。…

    2022年5月28日
    38
  • 【STM32】系统时钟RCC详解(超详细,超全面)

    【STM32】系统时钟RCC详解(超详细,超全面)1什么是时钟时钟是单片机运行的基础,时钟信号推动单片机内各个部分执行相应的指令。时钟系统就是CPU的脉搏,决定cpu速率,像人的心跳一样只有有了心跳,人才能做其他的事情,而单片机有了时钟,才能够运行执行指令,才能够做其他的处理(点灯,串口,ADC),时钟的重要性不言而喻。为什么STM32要有多个时钟源呢?STM32本身十分复杂,外设非常多但我们实际使用的时候只会用到有…

    2022年6月28日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号