sort命令
sort是按照ASCII码升序输出,且是从首字符依次向后比较的

常见选项
      -c 测试文件是否已经被排序

-r  逆向排序
      -n 按照数字数值大小排序

-t  指定分割符
      -k 指定域

-u 去除结果中的重复行
      -m 合并两个已排序的文件
      -o 将输出写到指定的文件

(1) -u 排序后去除重复行

# cat 1.txt
1:datadir=/aaa/zzz:
2:basedir=:cc
4:datadir=/sdfsfsd:dd
3:basedir=/data:gg
snsdsnsdsnsd
snsdsnsdsnsd # cat 1.txt | sort -u
1:datadir=/aaa/zzz:
2:basedir=:cc
3:basedir=/data:gg
4:datadir=/sdfsfsd:dd
snsdsnsdsnsd

(2) -n

# cat 2.txt
1
10
11
19
2
5 # cat 2.txt | sort --->#sort是按照ASCII码升序输出,且是从首字符依次向后比较的
1
10
11
19
2
5 # cat 2.txt | sort -n --->#为实现纯数值排序可用 -n 选项实现
1
2
5
10
11
19

(3) -r 逆序

# cat 2.txt | sort -n -r
19
11
10
5
2
1

(4) -t -k

# cat -n 3.txt
1 banana:30:5.5
2 apple:10:2.5
3 pear:90:2.3
4 orange:20:3.4 # cat 3.txt | sort
apple:10:2.5
banana:30:5.5
orange:20:3.4
pear:90:2.3 # cat 3.txt | sort -t ':' -k 3 -n --->#以:为分隔符,根据第3个域的数值大小排序
pear:90:2.3
apple:10:2.5
orange:20:3.4
banana:30:5.5 # cat 3.txt | sort -t ':' -k 3 -n -r --->#以:为分隔符,根据第3个域的数值大小逆向排序
banana:30:5.5
orange:20:3.4
apple:10:2.5
pear:90:2.3

[shell基础]——sort命令的更多相关文章

  1. shell之sort命令

    1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [rocrocket@rocrocket progr ...

  2. shell基础--test命令的使用

    test :用于文件类型检查和变量比较 一.用途: 1.判断表达式 2.判断字符串 3.判断整数 4.判断文件 测试例子: (1).test [root@~_~ day5]# cat test.sh ...

  3. shell的sort命令

    sort命令以行为单位对文本进行排序. 命令语法: sort [-b/d/f/g/i/M/n/r] [InFile] 参数解释: -b: ignore-leading-blanks,忽略前面空格符部分 ...

  4. [shell基础]——find命令

    find命令选项 -name 按照文件名查找 -type 查找某一类型的文件(b 代表设备块:d 目录:c 字符设备文件:l 符号(软)链接文件:f 普通文件) -size 查找文件长度或者大小 -p ...

  5. [shell基础]——sed命令

    关于sed sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓 ...

  6. [shell基础]——read命令

    read命令:在shell中主要用于读取输入.变量.文本 1. 接受标准输入(键盘)的输入,并将输入的数据赋值给设置的变量      [按回车键——表示输入完毕]      [若输入的数据多于设置的变 ...

  7. [shell基础]——echo命令

    echo命令:在shell中主要用于输出 1. -n     不换行的显示结果(默认是换行的) 2. -e " "  支持双引号中使用一些特殊字符 常用的特殊字符有 \a 发出警告 ...

  8. 【shell】sort命令

    [root@andon ~]# sort 1 ##常用正序自动排序 101 paul 18 100 102 suan 11 99 103 peter 18 98 id name age score [ ...

  9. [shell基础]——uniq命令

    uniq命令常见选项      去除重复行      -u  显示不重复的行      -d  显示有重复的行      -c  打印每一行重复的次数 测试文本内容如下: # cat 4.txt 11 ...

随机推荐

  1. Windows phone 8 学习笔记(5) 图块与通知(转)

    基于metro风格的Windows phone 8 应用提到了图块的概念,它就是指启动菜单中的快速启动图标.一般一个应用必须有一个默认图块,还可以有若干个次要图块.另外,通知与图块的关系比较密切,我们 ...

  2. Android IOS WebRTC 音视频开发总结(三六)-- easyRTC介绍

    本文主要介绍easyRTC,文章来自博客园RTC.Blacker,支持原创,转载请说明出处. 先看看人家官网的介绍,然后再来解释,这样您可能更容易理解: 以下部分内容属个人看法,如有异议,欢迎探讨: ...

  3. 定时器Timer

    定时器类:Timer 构造函数:Timer(TimerCallback callback, object state, uint dueTime, uint period) callback:中断处理 ...

  4. WP8 调用特定API权限不足

    1.在解决方案中依次打开  Properties -> WMAppManifest.xml 2.点击功能 3.在左侧功能列表中勾选想要的功能权限.完毕

  5. Linux 常用ps命令

    (1)查看系统所有进程: 标准格式:           ps -e           ps -ef           ps -eF           ps -ely   BSD格式:     ...

  6. 转载:T-SQL语句大全

    一.基础 1.创建数据库 CREATE DATABASE database-name 2.删除数据库 drop database dbname 3.备份数据库 --- 创建 备份数据的 device ...

  7. asp.net跨页面传值

    a.aspx.cs //获取a中的id HttpCookie objCookie = new HttpCookie("myCookie", id); Response.Cookie ...

  8. jquery.pagination +JSON 动态无刷新分页

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="SqlPage.aspx.cs& ...

  9. 小菜的系统框架界面设计-数据的完美呈现(DataGridView扩展)

    背景 今天在做系统报表的过程中,我想实现批量操作DataGridView中的数据,在列中加复选框,通过一个事件触发进行全选或取消,可是在外面添加按钮,这种模式虽然能够实现,但是从系统界面设计的角度,美 ...

  10. linux基本使用(一)

    分区1./ 根分区2. swap 交换分区(大小建议是内存的1~2倍)3. /home 分区4./boot 引导文件(启动加载)分区5./var 等,最低 要有前2个分区吧,最好有home分区,因为没 ...