Linux文本数据的分类&去重&统计操作

常用的命令


一、Linux sort命令

  • 说明:
    • 操作文本文件的内容,以行为单位进行操作
    • 取每行的第一列值,转换为ASCII码值
    • 比较每行转换后的ASCII码值,升序排列
  • 语法:
sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件]
  • 参数:

    • -b 忽略每行前面开始出的空格字符。
    • -c 检查文件是否已经按照顺序排序。
    • -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
    • -f 排序时,将小写字母视为大写字母。
    • -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
    • -m 将几个排序好的文件进行合并。
    • -M 将前面3个字母依照月份的缩写进行排序。
    • -n 依照数值的大小排序。
    • -u 意味着是唯一的(unique),输出的结果是去完重了的。
    • -o<输出文件> 将排序后的结果存入指定的文件。
    • -r 以相反的顺序来排序。
    • -t<分隔字符> 指定排序时所用的栏位分隔字符。
    • +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
    • –help 显示帮助。
    • –version 显示版本信息。
  • 实例:
    1、创建test.txt文件,并写入无序内容a,b,c,如下图:
    原始排序
    2、使用sort命令对文本进行排序,如下图:
    排序后的内容

二、Linux uniq 命令

  • 说明:
    • 用于检测和删除文本中重复出现的行和列。
  • 语法:
uniq [-cdu][-f<栏位>][-s<字符位置>][-w<字符位置>][--help][--version][输入文件][输出文件]
  • 参数:

    • -c或–count 在每列旁边显示该行重复出现的次数。
    • -d或–repeated 仅显示重复出现的行列。
    • -f<栏位>或–skip-fields=<栏位> 忽略比较指定的栏位。
    • -s<字符位置>或–skip-chars=<字符位置> 忽略比较指定的字符。
    • -u或–unique 仅显示出一次的行列。
    • -w<字符位置>或–check-chars=<字符位置> 指定要比较的字符。
    • –help 显示帮助。
    • –version 显示版本信息。
    • [输入文件] 指定已排序好的文本文件。如果不指定此项,则从标准读取数据;
    • [输出文件] 指定输出的文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)。
  • 实例:
    演示实例
    备注:如果重复的行列不相邻,uniq是无法做到去重操作的,从上图也可以看到,所以一般要结合sort使用,先排序,让重复行列相邻,然后通过uniq命令进行去重。

三、 Linux wc命令

  • 说明:

    • 用于统计文本的行数、字数、字节数。
  • 语法:

wc [-clw][--help][--version][文件...]
  • 参数:
    • -c或–bytes或–chars 只显示Bytes数。
    • -l或–lines 只显示行数。
    • -w或–words 只显示字数。
    • –help 在线帮助。
    • –version 显示版本信息。
  • 实例:
    在这里插入图片描述
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值