`
不爱不见
  • 浏览: 275822 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

awk对文件按照列进行合并

阅读更多
   首先解释一下awk合并文件用到的变量,NR表示读到的文件行数,会对所有文件进行累加,FNR表示读到的当前文件行数,每次读完一个文件后就会从1重新开始。

文件1.request.txt(空格分隔,一共3列)
/game/bag/batchSell 98.5775 842
/game/bag/gainVipDailyGift 24.0069 785
/game/bag/open 9.54098 16
/game/bag/refresh 76.3525 820
/game/bag/useItem 67.3278 798
/game/banquet/newBanquet 91.8188 985[color=red][/color]
/game/battle/autoCheckPoint 111.041 4419
/game/battle/cancelOffLine 154.037 2120
/game/battle/checkpoint 267.485 8589
/game/battle/detect 343.987 844
/game/battle/offLineAuto 6.31881 49
/game/battle/speedUp 71.5616 2566
/game/beauty/addToGeneral 277.299 1068

文件2.requestShort.txt(空格分隔,一共2列)
/game/bag/batchSell 12
/game/bag/gainVipDailyGift 6
/game/bag/open 6
/game/bag/refresh 0
/game/bag/useItem 6
/game/banquet/newBanquet 20
/game/battle/autoCheckPoint 0
/game/battle/cancelOffLine 6
/game/battle/checkpoint 11
/game/battle/detect 2
/game/battle/offLineAuto 0
/game/battle/speedUp 0
/game/beauty/addToGeneral 7

要求:按照第一列进行合并,合并的命令如下:
awk 'NR==FNR{a[$1]=$2}NR>FNR&&a[b=$1]{print $0, a[b]}' request.log requestShort.log >result.txt

合并后的结果:
/game/bag/batchSell 98.5775 842 12
/game/bag/gainVipDailyGift 24.0069 785 6
/game/bag/open 9.54098 16 6
/game/bag/useItem 67.3278 798 6
/game/banquet/newBanquet 91.8188 985 20
/game/battle/cancelOffLine 154.037 2120 6
/game/battle/checkpoint 267.485 8589 11
/game/battle/detect 343.987 844 2
/game/beauty/addToGeneral 277.299 1068 7
分享到:
评论

相关推荐

    linuxawk将多个文件结果列合并到一个文件整理.pdf

    linuxawk将多个文件结果列合并到一个文件整理.pdf

    linux常用命令大全.docx

    linux常用命令大全 Linux系统提供了大量的命令... sort:对文本行进行排序。 uniq:报告或省略重复的行。 cut:从每行中删除指定的部分。 paste:合并文件的行。 sed / awk:强大的文本处理工具,用于模式扫描和

    shell两个文件去重的多种姿势

    大家都知道shell在文本处理上确有极大优势,比如多文本合并、去重等,但是最近遇到了一个难搞的问题,即两个大数据量文件去重。下面来看看详细的介绍吧。 要求  有txt文件A.txt和B.txt。 其中A为关键词和搜索量,以...

    shell浅谈之六字符串和文件处理.docx

    Bash Shell提供了很多字符串和文件处理的命令。如awk、expr、grep、sed等命令,还有文件的排序、合并和分割等一系列的操作命令。grep、sed和awk内容比较多故单独列出,本文只涉及字符串的处理和部分文本处理命令。

    LINUX与UNIX_Shell编程指南(上)

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    Linux与unix shell编程指南(1-16)

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    LINUX 与 UNIX SHELL编程指南

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用 type 选项 17 2.1.9 使用 size 选项 18 2.1.10 使用 depth 选项 18 2.1.11 使用 mount 选项 18 2.1.12 使用 cpio 选项 18 ...

    Linux与unix shell编程指南

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    linux shell 编程教程

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    shell 编程指南pdf

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    LINUX与UNIX SHELL编程指南(很全)

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    linux与unix shell 编程(下)

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    LINUX与UNIX SHELL编程指南.rar

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    Linux与unix shell编程指南1.rar

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    shell教程-30章,下了之后会让你大吃一惊,相当好

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

    LINUX与UNIX SHELL编程指南

    2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok...

Global site tag (gtag.js) - Google Analytics