1、排序命令 - sort:

sort可以帮我们进行排序,排序顺序按照LANG(语系环境变量)确定。据观察,sort排序以行为单位进行。排序以第一个不相同的字符决定先后顺序(只与第一个不相同的字符相关)。sort命令调用格式为:  sort [-fbMnrtuk] [file or stdin]

其具体选项解释为:

  • -f   : 忽略大小写的差异,例如 A 与 a 视为编码相同;
  • -b  : 忽略最前面的空格部分;
  • -M : 以月份的名字来排序。例如 JAN,DEC等的排序方法;
  • -n  : 使用“纯数字”进行排序(默认是以文字类型来排序的);
  • -r   : 反向排序;
  • -u  : 就是uniq,相同的数据中,仅出现一行代表;
  • -t   : 分隔符,默认使用[tab]键来分隔;
  • -k  : 以那个区间(field)来进行排序的意思。
  • 其它选项

sort的选项基本没多大用处,一般直接用sort就解决问题了。

2、统计-wc:

这个一个非常简单的命令,就是统计文件中的行数、单词数(统计空白字符)、字符数。

具体选项解释:

  • -l : 仅列出函数;
  • -w : 仅列出单词数(被空白字符分隔的东西,你如果愿意每个汉字间用空白字符分隔开,也可以统计出来);
  • -m : 仅列出字符数。
  • -c : 列出字节数

注意事项:

  • 不带选项调用wc会输出三个项,分别是行数、单词数、字符数,就相当于调用了-lwm;
  • 函数是统计行结束符的,如果最后一行没有行结束符则统计不出来(实测结果),事实上man给出的-l的解释是“列出new line的数目”;

3、排序后合并-uniq:

强调排序后合并是因为uniq只能在相邻行之间发生关系,所以一般得先用sort排序后才能发挥作用。uniq主要作用是把相邻的重复数据合并显示。

具体选项解释:

  • -i: 忽略大小写字符的不同;
  • -c : 合并的同时进行计数,计数值显示在行的最前面。

[Linux-脚本]排序、统计、合并命令的更多相关文章

  1. Linux文件排序工具 sort 命令详解

    sort是排序工具,它完美贯彻了Unix哲学:"只做一件事,并做到完美".它的排序功能极强.极完整,只要文件中的数据足够规则,它几乎可以排出所有想要的排序结果,是一个非常优质的工具 ...

  2. Linux基础--分类与合并命令

    1.sortsort命令将许多不同的域按不同的顺序分类,sort命令的一般格式为: sort -cmu -o output_file [other options] +pos1 +pos2 input ...

  3. Linux下的paste合并命令详解

    paste单词意思是粘贴.该命令主要用来将多个文件的内容合并,与cut命令完成的功能刚好相反. 粘贴两个不同来源的数据时,首先需将其分类,并确保两个文件行数相同.paste将按行将不同文件行信息放在一 ...

  4. linux脚本中有source相关命令时的注意事项

    写这个问题起因是因为一个同学去的java一键脚本环境变量设置问题, [root@localhost u01]# more 1.sh #!/bin/bash grep -q "export J ...

  5. Linux Shell编程第5章——文件的排序、合并和分割

    目录 sort命令 sort命令的基本用法 uniq命令 join命令 cut命令 paste命令 split命令 tr命令 tar命令 sort命令 sort命令是Linux系统一种排序工具,它将输 ...

  6. 11.4.2 排序或合并文件(sort命令) - 51CTO.COM

    11.4.2 排序或合并文件(sort命令) - 51CTO.COM 11.4.2 排序或合并文件(sort命令) 2010-03-12 14:37 陆松年 电子工业出版社 我要评论(0) 字号:T ...

  7. 详解如何在 Linux 启动时自动执行命令或脚本

    我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情.按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟.当你注销或者关机时 ...

  8. 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)

    如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样) python标准库中的subprocess可以解决这个问题. from subprocess ...

  9. Linux执行shell脚本方式及区别&命令后台运行

    Linux执行shell脚本方式及区别&命令后台运行 http://blog.csdn.net/heqiyu34/article/details/19089951/

随机推荐

  1. Java开发基础

    天数 课程 01 Java基础回顾 集合 泛型 IO流 多线程 Junit Properties   HTML   JavaScript   JavaScript   BOM编程   XML基础   ...

  2. 附加类型的实体失败,因为相同类型的其他实体已具有相同的主键值。在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实体具有冲突键值

    var list= DAL.LoadEntities(x => x.OrderCode == orderCode).AsNoTracking().ToList().FirstOrDefault( ...

  3. stm32定时器中断类型分析

    一直在用的stm32定时器的中断都是TIM_IT_Update更新中断,也没问为什么,直到碰到有人使用TIM_IT_CC1中断,才想到这定时器的中断类型究竟有什么区别,都怪当时学习stm32的时候不够 ...

  4. 开发微信小程序 中遇到的坑 及解决方法

    1.wx.request 只能访问 https 解决: 新建项目  不填appid  即可访问 localhost 2.页面中多重三元表达式  解析有问题 解决: <!--{{index}} { ...

  5. MySQL DDL 整理

    DDL is Data Definition Language statements. Some examples:数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 -- 清空表内容 T ...

  6. Spring mvc Controller接口

    Spring MVC 1. 继承该接口 Controller接口,重写对应方法,或者采用注解Controller,自定义映射文件 @Controller @RequestMapping("/ ...

  7. Mac终端下打开sublime

    我安装的sublime 2终端输入如下命令 alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl ...

  8. 第一种SUSE Linux IP设置方法

    第一种SUSE Linux IP设置方法ifconfig eth0 192.168.1.22 netmask 255.255.255.0 uproute add default gw 192.168. ...

  9. C++ 在容器中存放函数指针

    注意,对一般c++ 98标准编译器而言,容器泛型模板是不支持直接存放函数指针的.需要typedef将函数指针重命名. 比如,一个void返回值参数也为void的函数指针,需要 typedef void ...

  10. CentOS6.4下基于Nginx搭建mp4/flv流媒体服务器

    我的步骤如下:1. 安装依赖包: yum install glibc.i686#yum –y update#yum -y install gcc glibc glibc-devel make nasm ...