Skip to content

Linux常用统计命令

Linux 常用统计命令

简介

在 Linux 系统中,有一些常用的命令可以用来收集和统计数据。

常用统计命令的使用场景

  1. 日志分析和监控:通过使用 Linux 统计命令,可以实时监控和分析系统日志文件,了解系统的运行状况和性能指标。例如,使用 tail 命令结合 grepawk 进行日志过滤和关键信息提取,使用 wc 命令统计日志文件的行数或字数等。

  2. 文本处理和文件操作:Linux 统计命令可以通过行、字或字符统计给定文本文件的大小、字数、行数等。同时,还可以对文件进行排序、合并、去重、拆分等操作,以满足文件处理的需求。

  3. 数据清洗和预处理:在数据处理流程中,Linux 统计命令可以用于清洗和预处理原始数据。例如,使用 sed 命令进行文本替换、使用 cut 命令截取特定字段、使用 uniq 命令去重数据等。

常用统计命令的使用

排序 sort(选修)

可以通过参数限制排序的分隔符、关键字以及排序规则。

sort [参数]

常用参数:

  • -b:忽略开头的空白字符。
  • -f:将小写字母看做大写字母。
  • -h:根据存储容量从小到大排序(KB、MB、GB)。
  • -n:按数字大小从小到大排序。
  • -r:以相反(从大到小)的顺序来排序。
  • -o:把排序结果写入新文件中。
  • -t:指定分隔符,默认为空格,后跟分隔符。
  • -k:指定分隔符排序的列数关键字,后跟数字,与 -t 参数配合使用。
  • -V:按照数字版本从小到大排序。
# 忽略开头的空白字符,按照存储容量从大到小排序,
# 并将排序结果存入1.txt 文件中。
cat sort_n | sort -hr -b -o 1.txt
# 以.为分隔符,按照第三列的数字大小从小到大排序
cat sort_n | sort -n -t . -k 3
# 按照数字版本从小到大排序
cat sort_v | sort -V

去重 uniq(选修)

去重命令只对比前后两行是否有重复内容,所以在去重之前应先对文件内容进行排序。

uniq [参数]

常用参数:

  • -c:统计重复出现的次数,会展示在第一列。
  • -d:所有邻近的重复行只被打印一次。重复次数要大于等于 2。
  • -D:所有邻近的重复行将全部打印,只出现一次的就会被隐藏起来。
  • -f:跳过对前 n 个列的比较。
  • -s:跳过对前 n 个字符的比较。
  • -w:只对每行前 n 个字符进行比较是否重复。
# 将文件按照第三列排序完成后,跳过前两列比较第三列的值,
# 并把重复的次数展示在第一列,最后按照重复出现的次数从小到大排序。
 cat uniq_demo.txt | sort -k 3|uniq -c -f 2 | sort -k 1

统计 wc(重点)

只输入 wc 不加任何参数的话,会依次打印行数、单词数、字节数。

wc [参数]

常用参数:

  • -c:统计字节数
  • -l:统计行数
  • -w:统计单词数
  • -L:打印最长行的长度(字节数),不包含最后的换行符。
wc [参数]
# 统计文件中的单词数、行数、字节数
cat wc_demo.txt |wc
# 统计文件中的行数。
cat wc_demo.txt |wc -l

总结

  • 常用统计命令的使用场景。
  • 常用统计命令的使用。