Chinaunix

标题: 行数不同 但是 有两列相同 的文件合并 求助了 [打印本页]

作者: x3    时间: 2011-12-12 20:35
标题: 行数不同 但是 有两列相同 的文件合并 求助了
本帖最后由 x3 于 2011-12-12 20:37 编辑

---big 文件
F440 name1   1   no1
F440 name10  10  no2
F440 name2   2   no3
F440 name3   3   no4
F440 name4   4   no4
F440 name5   5   no8
F440 name6   6   no4
F440 name7   7   no12
F440 name8   8   no4
F440 name9   9   no15
      





---little  
F440 name2  2
F440 name3  3
F440 name4  4
F440 name5  5
F440 name6  6
F440 name7  7
F440 name8  8
F440 name9  9

行数不同

想实现以little文件为基础 合并后对应 big文件的 第四列  如

F440 name  2  no3   
F440 name  3  no4
F440 name  4  no4
F440 name  5  no8
F440 name  6  no4  
F440 name  7  no12
F440 name  8  no4  
F440 name  9  no15

求助 shell该如何写呀?????
作者: Shell_HAT    时间: 2011-12-12 20:51
  1. awk 'NR==FNR{a[$1 $2 $3]=$4}NR>FNR{$0=$0" "a[$1 $2 $3];print}' big little
复制代码

作者: x3    时间: 2011-12-12 22:03
awk 'NR==FNR{a[$1]=$0}NR>FNR{print $1" "a[$2]}

这个都理解起来很费劲了 谢谢楼上 有空 我运行下看看结果
作者: zooyo    时间: 2011-12-12 23:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: x3    时间: 2011-12-12 23:58
本帖最后由 x3 于 2011-12-12 23:59 编辑

grep -f
高 实在是高

给俺们 补补课 说说原理吧
作者: Shell_HAT    时间: 2011-12-13 10:19
回复 5# x3


http://bbs.chinaunix.net/thread-446683-1-1.html
作者: x3    时间: 2011-12-13 10:26
杯具了  在 redhat 5下可以   aix 5下可以

唯独 sunos10 下不行  awk不行时  grep也不行

郁闷呀 sunos 咋整呢
作者: Shell_HAT    时间: 2011-12-13 10:28
回复 7# x3


/usr/xpg4/bin/awk
/usr/xpg4/bin/grep




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2