unix命令(grep,cut)

时间:2011-04-02 10:01:42

标签: unix

我有这个文件“自动”内容:

雷诺:克里奥:1999:25000:9000:胭脂
标致:106:2000:15000:10000:bleue
雪铁龙:AX:1994:55000:5000:gris
wolswagen:golf4:2000:10000:22000:bleue
梅赛德斯:Classe C:2002:5000:43000:gris
雷诺:克里奥:1993:65000:6000:bleue
wolswagen:golf3:1995:58000:8000:bleue

所以,问题是“如何显示模型列表(第2个字段)文件”自动“为每个人识别车辆数量?”

3 个答案:

答案 0 :(得分:2)

尝试脚本count

#!/usr/bin/awk -f
{
  col = 2
  freq[$col]++
}
END {
  for (word in freq)
    printf "%s\t%d\n", word, freq[word]
}

,在运行后:count data.txt,将打印:

:106        1
:Clio       2
:AX         1
:golf3      1
:Classe     1
:golf4      1

答案 1 :(得分:0)

 cut -d ':' -f 2 auto | sort | uniq -c | sort -n

这次我测试了它:

sehe@meerkat:/tmp$ cut -d ':' -f 2 auto | sort | uniq -c | sort -n
      1 106 
      1 AX 
      1 Classe C 
      1 golf3 
      1 golf4 
      2 Clio 

答案 2 :(得分:0)

谢谢大家,我在结合一些回复后编辑了这段代码:

cut -f2 -d: auto|sort|uniq -c

我得到了搜索结果:

1 106
 1 AX
 1 Classe C
 2 Clio
 1 golf3
 1 golf4