在Linux中查找包含两个相同字符的单词

时间:2017-11-02 00:22:10

标签: linux

我想从{a..z}找到一个包含两个相同字符的单词,输出应该像" 195 y bsygyx"。有195个单词恰好包含两个" y"用文字表示,然后是一些例子。

1 个答案:

答案 0 :(得分:1)

这将为您提供所需格式的数据

tr ' ' '\n' <file | 
sed -nE 's/\w*(\w)\w*\1/\1\t&/p' | 
sort | 
uniq -c -w1

示例文字

  

Sed ut perspiciatis,unde omnis iste natus error sitting voluptatem accusantium doloremque laudantium,totam rem aperiam eaque ipsa,quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt,explicabo。 Nemo enim ipsam voluptatem,quia voluptas sit,asdnatur aut odit aut fugit,sed quia consequuntur magni dolores eos,qui ratione voluptatem sequi nesciunt,neque porro quisquam est,qui dolorem ipsum,quia dolor sit amet consectetur adipisci [ng] velit,sed quia non numquam [do] eius modi tempora inci [di] dunt,ut labore et dolore magnam aliquam quaerat voluptatem。 Ut enim ad minima veniam,quis nostrum exercitationem ullam corporis suscipit laboriosam,nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit,qui in ee voluptate velit esse,quam nihil molestiae consequatur,vel illum,qui dolorem eum fugiat,quo voluptas nulla pariatur?

输出

  4 a   aliquam
  8 e   beatae
  7 i   adipisci[ng]
  4 l   illo
  3 m   magnam
  2 n   nesciunt,
  7 o   commodi
  5 r   aspernatur
  1 s   perspiciatis,
  8 t   architecto
  6 u   accusantium

单词样本是每个字母的第一个。对于可能有多对字母的单词,只报告其中一个(例如,commodi有双o和双m;这里列为o)