Linux基础:sort命令总结
本文只总结一些常用的用法,更详细的说明见
man sort和sort --help。
sort命令
sort命令用于串联排序指定文件并将结果写到标准输出。
sort可以指定按照何种排序规则进行排序,如按照当前字符集排序规则(这是默认排序规则)、按照字典排序规则、按照数值排序规则、按照月份排序规则、按照文件大小格式(K<M<G)。还可以去除重复行,指定降序或升序(默认)的排序方式。
字符集排序、字段排序的顺序:
空字符串<空白字符<数值<a<A<b<B<...<z<Z
语法格式
Usage: sort [OPTION]... [FILE]...
or: sort [OPTION]... --files0-from=F
选项说明
| OPTION | 说明 |
|---|---|
| -c | 检测给定的文件是否已经排序。如未排序,则会输出诊断信息,提示从哪一行开始乱序。 |
| -b | 忽略字段前面的空格。若空格数量不固定时,推荐使用。"-n"选项隐含该选项。 |
| -d | 按照字典顺序排序,只支持字母、数值、空格。 |
| -f | 将所有小写字母等同于大写字母。 |
| -k | 指定要排序的key。 |
| -n | 按数值排序。 |
| -o | 将结果输出到指定文件中。 |
| -r | 降序排序。 |
| -t | 指定字段分隔符。 |
实例
测试文本1.txt
ZZ 2DF
AA 330
Sa n22
dB ss2
DD 231
Aa 500
bB 300
CC 222
BB 200
示例
# 默认的排序规则为字符集排序规则,且为升序
[root@test ~]# sort 1.txt
AA 330
Aa 500
BB 200
bB 300
CC 222
dB ss2
DD 231
Sa n22
ZZ 2DF
# 将小写字母等同于大写字母
[root@test ~]# sort -f 1.txt
Aa 500
AA 330
BB 200
bB 300
CC 222
dB ss2
DD 231
Sa n22
ZZ 2DF
# 降序
[root@test ~]# sort -r 1.txt
ZZ 2DF
Sa n22
DD 231
dB ss2
CC 222
bB 300
BB 200
Aa 500
AA 330
# 根据第二列排序,分隔符为空格
[root@test ~]# sort -t $' ' -k2 1.txt
BB 200
CC 222
DD 231
ZZ 2DF
bB 300
AA 330
Aa 500
Sa n22
dB ss2
# 将以上结果输出到2.txt
[root@test ~]# sort -t $' ' -k2 1.txt -o 2.txt
[root@test ~]# cat 2.txt
BB 200
CC 222
DD 231
ZZ 2DF
bB 300
AA 330
Aa 500
Sa n22
dB ss2
Linux基础:sort命令总结的更多相关文章
- Linux的sort命令
Linux的sort命令 Linux的sort命令就是一种对文件排序的工具,sort命令的功能十分强大,是Shell脚本编程时常使用的文件排序工具. sort命令将输入文件看做由多条记录组成的数据流 ...
- linux下sort命令使用详解---linux将文本文件内容加以排序命令
转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...
- Linux学习笔记(9)linux网络管理与配置之一——Linux基础网络命令与学习大纲(0)
大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配置DNS客户端 4.配置名称解析顺序 5.配置路由与默认网关 6.双网卡绑定 [1] ping [2]net ...
- (大数据工程师学习路径)第一步 Linux 基础入门----命令执行顺序控制与管道
介绍 顺序执行.选择执行.管道.cut 命令.grep 命令.wc 命令.sort 命令等,高效率使用 Linux 的技巧. 一.命令执行顺序的控制 1.顺序执行多条命令 通常情况下,我们每次只能在终 ...
- Linux基础入门级命令文档
Linux系统上命令的使用格式,及常用命令示例 1.命令提示符 登录系统后,第一眼看到的内容是: [root@node01 ~]# 上图就是 Linux 系统的命令提示符.那么,这个提示符的含义是什么 ...
- linux中sort命令全面解析
目录 一:sort命令作用 二:sort格式 1.sort参数 2.参数解析 sort命令简介 Linux sort 命令用于将文本文件内容加以排序. sort 可针对文本文件的内容,以行为单位来排序 ...
- 11、Linux基础--sort、uniq、cut、tr、wc、流处理工具sed
笔记 1.晨考 1.写出过滤手机号的正则表达式 1[0-9]{10} 2.写出过滤邮箱的正则表达式 chenyang@123.com [a-zA-Z0-9-_]+@[a-z0-9]+\.(com|cn ...
- [shell基础]——sort命令
sort命令 sort是按照ASCII码升序输出,且是从首字符依次向后比较的 常见选项 -c 测试文件是否已经被排序 -r 逆向排序 -n 按照数字数值大小排序 -t 指定分割 ...
- linux下sort命令详解大全
工作原理: Sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. 第一部分: 1. sort:(不带参数) [rocrocket@ ...
- linux下sort命令详解
1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [rocrocket@rocrocket progr ...
随机推荐
- nuxtjs如何通过路由meta信息控制路由查看权限
我们知道NUXTJS可以通过路由中间件进行路由鉴权,中间件允许您定义一个自定义函数运行在一个页面或一组页面渲染之前. 但是我在实际使用过程中发现,中间件只有在路由跳转到路由中时才会进入,而在强制刷新网 ...
- 通过rpm安装crontab
可以在对应的虚拟机centos上查看 所安装的crontab安装信息,然后选中rpm包进行安装,命令:rpm -qa |grep cron 如: 如没有上述信息,表名没有安装,也可以直接用cronta ...
- 【Python开发】Pycharm下的Anaconda配置
我的系统是Win 64位的,用的Python 3.5.1 ,最近在学机器学习,用到了Numpy这个科学计算库,网上查了之后,看到很多装Numpy出问题的情况,所以决定装Anaconda,简单一些,并且 ...
- [C++进阶] 数据结构与算法
1 出栈&入栈问题 一个栈的入栈序列为ABCDE,则不可能的出栈序列为?(不定项选择题) A:ECDBA B:DCEAB C:DECBA D:ABCDE E:EDCBA 正确答案 ...
- sql的插入或者修改
<select id="insertOrUpdateTenantDetail" parameterType="tenantDetailDO"> IN ...
- kafka原理篇
目录 消息队列分类 点对点 发布/订阅 kafka介绍 kafka架构说明 Topic与Partition的关系 partition复制机制 Consumer与Topic的关系 消息队列分类 点对点 ...
- [转帖]统一操作系统 UOS 龙芯版上线
统一操作系统 UOS 龙芯版上线 看评论很有必要 搞一波 深度的操作系统了https://www.oschina.net/news/112065/chinauos-with-loongson?p=4 ...
- c++中如何判断sqlite表是否存在
在项目中遇到需要判断sqlite数据库中某个表是否存在,上网搜索一些资料后,解决了问题,如下: 首先,在每个sqlite数据库中,都有一个名为sqlite_master的表,它定义了数据库的模式,它的 ...
- 更改collation批处理
DECLARE @zcreate_index_sql NVARCHAR(max); SET @zcreate_index_sql = N''; SELECT @zcreate_index_sql = ...
- 使用DbVisualizer 10.0.20 查询ES中的索引时需要注意的事项
查询前5条数据 光标停在某一个查询结果框中,左下角会显示该字段的类型 查询类型是text的字段使用单引号,使用双引号查询会报错