百度
360搜索
搜狗搜索

linux去重统计个数命令详细介绍

在 Linux 里,有不少命令能够实现去重并统计个数的功能,下面为你介绍几种常用的方法:

1. 使用
sort
uniq -c

sort 命令可对文本进行排序,uniq -c 能对相邻的重复行进行合并并统计重复次数。

示例命令:
bash

 your_file.txt   

解释:

  • sort your_file.txt:对 your_file.txt 文件中的内容进行排序。
  • uniq -c:对排序后的相邻重复行进行合并,同时在每行开头显示重复的次数。

2. 使用
awk

awk 是一种功能强大的文本处理工具,能够实现去重并统计个数。

示例命令:
bash

  your_file.txt

解释:

  • count[$0]++:以整行内容作为数组 count 的索引,每遇到一行,对应索引的值就加 1。
  • END {for (line in count) print count[line], line}:在处理完所有行之后,遍历数组 count,打印出每个索引对应的计数值和行内容。

3. 使用
perl

perl 也是一个强大的文本处理工具,可实现去重并统计个数。

示例命令:
bash

perl   your_file.txt

解释:

  • -ne:逐行读取输入文件,对每行执行指定的代码块。
  • chomp:去除每行末尾的换行符。
  • $count{$_}++:以当前行内容作为哈希表 %count 的键,每遇到一行,对应键的值就加 1。
  • END {foreach (sort keys %count) {print "$count{$_} $_\n"}}:在处理完所有行之后,遍历哈希表 %count,打印出每个键对应的计数值和键内容。

请把 your_file.txt 替换成你实际要处理的文件名。

阅读更多 >>>  linux命令行中移动文件

文章数据信息:

本文主要探讨:"linux去重统计个数命令", 浏览人数已经达到28次, 首屏加载时间:1.402 秒。