+ -
当前位置:首页 → 问答吧 → awk 如何统计所有内容在另一文件中的数量?

awk 如何统计所有内容在另一文件中的数量?

时间:2011-07-03

来源:互联网

A文件

a b c
d e h
c e f
g h i
d e f
b c d



B文件
a b c d e f
b d g h i j
b d c j e f


比如B文件第一行,
a b c d e f  包含了 A文件中的第1,3,4,5行,总共是4行

显示结果为:
1:4


统计后,所有结果如下
1:4
2:1
3:3

作者: vitas333_cu   发布时间: 2011-07-03

回复 vitas333_cu
  1. awk 'NR==FNR{b[NR]=$0;n=NR;next}{x=0;{for(i=1;i<=n;i++){split(b[i],a);if (index($0,a[1])*index($0,a[2])*index($0,a[3])>0) x++}};print FNR":"x}' a b
  2. 1:4
  3. 2:1
  4. 3:3
复制代码

作者: yinyuemi   发布时间: 2011-07-03