+ -
当前位置:首页 → 问答吧 → 求脚本解决方法

求脚本解决方法

时间:2011-05-19

来源:互联网

我有2个文件a,b, 文件a,b中有内容是相同的,如
ld@umgsh-HP-Z600-Workstation:~/test$ cat a
aaa
bbb
ccc
ddd
efg
ld@umgsh-HP-Z600-Workstation:~/test$ cat b
aaa
bbb
ccc
fffff
aaaa
dfdfsf

我想通过对比把相同的内容放到same文件中,只在文件a中存在的放在ina文件中,只在文件b中存在的放在inb文件中,有什么好的方法实现?

作者: blueskysee   发布时间: 2011-05-19

grep -wf a b >same
grep -vwf b a>ina
grep -vwf a b<inb

作者: where27   发布时间: 2011-05-19

回复 where27


    学习了

作者: shplpy   发布时间: 2011-05-19



QUOTE:
grep -wf a b >same
grep -vwf b a>ina
grep -vwf a b
where27 发表于 2011-05-19 11:05




    厉害,简单命令实现强大功能

作者: zjdick1984   发布时间: 2011-05-19

作者: shell新手   发布时间: 2011-05-19

回复 where27


    你太猛了,我想了1个小时没想出来...

作者: blueskysee   发布时间: 2011-05-19

本帖最后由 yinyuemi 于 2011-05-19 11:37 编辑

回复 blueskysee


    awk:
  1. awk '{b[$0]=FILENAME;if(++a[$0]>1) {print $0>"same";delete b[$0]}}END{for(i in b) if(b[i]=="a") print i >"ina"; else print i >"inb"}' a b
复制代码

作者: yinyuemi   发布时间: 2011-05-19

  1. comm -12 a b > same
  2. comm -23 a b > ina
  3. comm -13 a b > inb
复制代码

作者: zooyo   发布时间: 2011-05-19