使用uniq命令在Linux中去重文本和统计行数

墨色流年 2022-02-08 ⋅ 40 阅读

在Linux操作系统中,我们经常需要对文本进行去重操作,同时还需要统计文本中行数。这时可以借助uniq命令来实现这两个功能。

uniq命令的基本用法

uniq命令用于去除文本文件中的重复行,它会将连续出现的重复行合并为一行,只保留一份。

基本使用方法如下:

uniq [选项] [输入文件] [输出文件]

其中,选项可以有以下几种:

  • -c:在输出结果中显示每行重复出现的次数。
  • -d:仅显示重复出现的行。
  • -i:在比较时忽略大小写。
  • -u:仅显示不重复的行。

示例:

$ cat input.txt
apple
banana
banana
orange
apple
$ uniq input.txt
apple
banana
orange
apple
$ uniq -c input.txt
      1 apple
      2 banana
      1 orange
      1 apple
$ uniq -d input.txt
banana
apple
$ uniq -u input.txt
banana
orange

统计行数

除了去重功能,我们还可以利用uniq命令来统计文本的行数。

统计行数的方法是先使用uniq命令去重,然后通过wc命令统计行数。wc命令用于计算文件中的行数、字数和字符数。

以下是统计行数的示例:

$ uniq input.txt | wc -l
3

上述命令将先对input.txt文件进行去重,然后通过wc命令统计行数。结果是3,即去重后的行数。

结语

uniq命令是Linux系统中一个非常实用的文本处理工具。它可以快速去重文本,并且还能结合wc命令进行行数统计。无论是处理日志文件、数据清洗还是数据分析,uniq命令都能帮助我们提高工作效率,简化操作流程。

希望本篇博客能帮助你更好地理解和使用uniq命令,在处理文本时更加高效地去重和统计行数。


全部评论: 0

    我有话说: