使用 Linux 计数器将最常用的单词写入文件

使用 Linux 计数器将最常用的单词写入文件

我想将文本中至少出现 X 次的单词写入文件。例如:

a
b
a
c
b

并且 X = 2 我会得到:

a
b

答案1

这是基本操作,但在处理较大的单词表时速度会比较慢:-

set Count
sort < WordList | uniq | while read w; \
    do [ $(grep -c "^$w$" WordList) -ge $1 ] && echo $w; done

更快的答案(感谢 Kamil Maciorowski):-

set Count
sort < WordList | uniq -c | while read c w; do [ $c -ge $1 ] && echo $w; done

假设:-

  • 您将设置您自己的FileList条目Count
  • 在 中,每行一个单词WordList
  • 大小写很重要(例如Thethe不同)。
  • 这是命令行条目:在脚本中,set Count将被省略并作为参数传递。

这应该可以帮助您入门,但您几乎肯定需要根据您的确切需求进行修改。

相关内容