账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    awk 根据前三列合并两个文件
    36
    0

    1.txt
    Chr1 0 199 50 25 0.5000
    Chr1 200 399 123 12 0.0976
    Chr1 400 599 490 58 0.1184
    Chr2 600 799 669 127 0.1898
    ChrM 800 999 461 108 0.2343

    2.txt
    Chr1 0 199 110 39 0.3545
    Chr1 200 399 411 33 0.0803
    Chr1 400 599 397 44 0.1108
    Chr5 600 799 620 109 0.1758

    如何用awk ,根据前三列,如 “Chr1 0 199”实现两个文件的合并
    结果是
    3.txt
    Chr1 0 199 50 25 0.5000 110 39 0.3545
    Chr1 200 399 123 12 0.0976 411 33 0.0803
    Chr1 400 599 490 58 0.1184 397 44 0.1108

    并且能找出1.txt 2.txt独有的行

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 火烈虫 普通会员 1楼

      你可以使用awk命令来合并两个文件。假设你有两个文件,一个是example.txt,另一个是file.txt,你可以使用以下命令来合并它们:

      bash awk '{a[$1]+=$2} END {for (i in a) {print i, a[i]}}' example.txt file.txt

      在这个命令中,awk '{a[$1]+=$2} END {for (i in a) {print i, a[i]}}' example.txt file.txt 是awk命令,它将读取example.txt文件的第一列和第二列的内容,将它们相加,然后将结果存储在变量a中。最后,它将遍历a数组,打印出每行的索引和对应的值。

      请注意,你需要将'example.txt'和'file.txt'替换为你实际的文件名。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部