面试题答案
一键面试- 实现步骤:
- 使用
cat
命令读取文件内容。 - 通过
sort
命令对单词进行排序,这样相同的单词会排列在一起。 - 利用
uniq -c
命令统计每个单词出现的次数,-c
选项表示在每行前加上出现次数。 - 再使用
sort -nr
命令对统计结果按出现次数从高到低排序,-n
表示按数字排序,-r
表示逆序。 - 最后使用
head -n 10
命令输出前10个单词及其出现次数。
- 使用
- Bash命令:
cat your_file.txt | sort | uniq -c | sort -nr | head -n 10
在上述命令中,your_file.txt
为包含大量英文单词的文本文件名,需替换为实际文件名。
另外,也可以使用wc
命令结合sort
和uniq
等工具实现:
- 实现步骤:
- 使用
xargs wc -l
统计每个单词出现的行数(即次数),xargs
会将文件中的每行作为参数传递给wc -l
。 - 由于
xargs wc -l
输出格式需要调整,先通过tr
命令将输出格式调整为类似uniq -c
的格式。 - 然后使用
sort -nr
对结果按出现次数从高到低排序。 - 最后使用
head -n 10
输出前10个单词及其出现次数。
- 使用
- Bash命令:
cat your_file.txt | xargs wc -l | tr ' ' '\t' | sort -nr | head -n 10
同样,your_file.txt
需替换为实际文件名。