当前位置: 首页 > 面试题库 >

Linux命令或脚本计算文本文件中的重复行?

越姚石
2023-03-14
问题内容

如果我有以下内容的文本文件

red apple
green apple
green apple
orange
orange
orange

是否可以使用Linux命令或脚本来获得以下结果?

1 red apple
2 green apple
3 orange

问题答案:

将其发送sort(将相邻的项目放在一起)然后uniq -c进行计数,即:

sort filename | uniq -c

并以排序顺序(按频率)获取该列表,您可以

sort filename | uniq -c | sort -nr


 类似资料:
  • 问题内容: 经过Google的几次搜索后,我想到的是: 这非常不方便,并且会输出不需要的文本,例如mime类型信息。有更好的解决方案吗?我在同一文件夹中有很多图像和其他二进制文件,还有很多文本文件需要搜索。 问题答案: 我知道这是一个旧线程,但是我偶然发现了它,并认为我会分享我的方法,我发现这是一种非常快速的方法,可用于仅查找非二进制文件: grep 的选项告诉它立即忽略二进制文件,而连同的选项会

  • 我使用下面的代码生成一个。apk文件,它工作得很好。但是,为了能够调试,我需要在“applicationvariants.all”周围注释代码,另一个明智的Android Studio说没有找到该文件。 我如何才能使它为generate.apk文件工作,并在Android Studio上调试? 更新 我发现发生了什么,实际上当我在文件名中使用日期和时间时,生成的文件中的时间与Android Stu

  • 原文:Basic text commands text 在Axes的任意位置添加文本。 命令式:matplotlib.pyplot.text,面向对象:matplotlib.axes.Axes.text。 xlabel 向 x 轴添加轴标签。 命令式:matplotlib.pyplot.xlabel,面向对象:matplotlib.axes.Axes.set_xlabel。 ylabel 向 y

  • mv 命令(move 的缩写),既可以在不同的目录之间移动文件或目录,也可以对文件和目录进行重命名。该命令的基本格式如下: [root@localhost ~]# mv 【选项】 源文件 目标文件 选项: -f:强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖; -i:交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项); -n:如果目标文件已经存在,则不会覆盖移动,而且不询问用户

  • 本文向大家介绍使用Java计算文本文件中的行数,包括了使用Java计算文本文件中的行数的使用技巧和注意事项,需要的朋友参考一下 我们可以使用Java的BufferedReader类读取文件中的行。请参阅下面的示例- 示例 在类路径中请看以下文本文件。 test.txt 测试器 这将产生以下结果- 输出结果

  • 作为入门代码编写者,我们正忙于Python中的一个刮取工具。它几乎完成了,但是现在我们想要在一个JSON文件中得到结果。我们试过了,但不起作用。有没有一个代码英雄可以帮助我们?