linux sort 命令实用手册
Linux 中的sort 命令是一个很实用的工具,用于对文本内容以行为单位进行ASCII 码排序,默认按照升序进行排序(当然也可以按照降序)。
sort 命令的格式如下:
sort `参数` `文件名`
这里不打算介绍其完整的使用方法,只介绍其重用方法,其完整手册可参看man sort。
比如,我们有如下文本内容,可以看到其内容是无序的,其中有两行333 和bbb:
>>> cat log.txt
_______________
555
333
2222
666
333
bbb
CCC
aaa
ccc
bbb
1,基本使用
使用sort 命令,不加任何参数,对该文件进行排序,如下,可看到已按照ASCII 码 进行了排序:
>>> sort log.txt
________________
2222
333
333
555
666
CCC
aaa
bbb
bbb
ccc
使用-f 参数可以忽略字符大小写进行排序,注意观察CCC 的位置:
>>> sort -f log.txt
___________________
2222
333
333
555
666
aaa
bbb
bbb
CCC
ccc
使用-r 参数可以进行反向排序:
>>> sort -r log.txt
___________________
ccc
bbb
bbb
aaa
CCC
666
555
333
333
2222
使用-u 参数,可以对重复行进行去重,可以看到只剩下一行333 和bbb:
>>> sort -u log.txt
___________________
2222
333
555
666
CCC
aaa
bbb
ccc
使用-o 参数,可以将排序结果写到某个文件(也可以是原文件),如下,将文件内容输出到log.txt2:
sort -u log.txt -o log.txt2
使用-n 参数,可以将排序结果按照数字大小进行排序,可以看到2222 排在了666 下面,这里只关心数字之间的次序就行(不需要关心字母与数字的关系):
>>> sort -n log.txt
___________________
aaa
bbb
bbb
ccc
333
333
555
666
2222
2,进阶使用
sort 命令还可以对行内容,先进行分割,再按照某列进行排序,这时需要用到-t 和-k 参数。
-t 参数用于设置以什么字符为分隔符,-k 参数用于以分割后的哪一列进行排序,如果没有设置,默认会按照第一列进行排序。
比如,我们有如下内容,每行内容以逗号,分割,注意第4行只有一列ddd:
>>> cat log2.txt
________________
bbb,333
aaa,2222
ccc,66
ddd,
bbb,555
我们以逗号, 进行分割,并按照第一列进行排序,如下:
>>> sort -t , log2.txt
______________________
aaa,2222
bbb,333
bbb,555
ccc,66
ddd,
按照第一列的第二个字符开始排序,如下1.2 表示从第一列的第二个字符开始排序:
>>> sort -t , -k 1.2 log2.txt
_____________________________
aaa,2222
bbb,333
bbb,555
ccc,66
ddd,
按照第二列,并以数字大小进行排序,如下:
>>> sort -t , -k 2 -n log2.txt
——————————————————————————————
ddd,
ccc,66
bbb,333
bbb,555
aaa,2222
先按照第二列,再按照第一列进行排序,如下:
>>> sort -t , -k 2 -k 1 log2.txt
_________________________________
ddd,
aaa,2222
bbb,333
bbb,555
ccc,66
下面总结一下以上讲到的参数及其含义:
| 参数 | 含义 |
|---|---|
-f |
将小写字母视为大写字母,即忽略大小写 |
-r |
反向排序 |
-u |
去重 |
-o |
输出到文件 |
-n |
以数字大小进行排序 |
-t |
设置分隔符 |
-k |
设置按照第几列排序,与-t 参数配合使用 |
(完。)
linux sort 命令实用手册的更多相关文章
- Linux sort命令中文手册(info sort翻译)
说明: (1).本手册只挑选了有用的信息进行翻译,如要查看完完整整的内容,请自行info sort. (2).译文中,在括号中使用了"注"的,为本人所加,非原文内容,助于理解和说明 ...
- linux uniq 命令实用手册
Linux uniq 命令用于处理文本内容中的重复行. 这里我们只介绍其常用参数,其完整用法可参见man uniq. 例如,我们有如下文件内容: >>> cat log.txt __ ...
- linux awk 命令实用手册
0,简介 Linux awk 是一个实用的文本处理工具,它不仅是一款工具软件,也是一门编程语言.awk 的名称来源于其三位作者的姓氏缩写,其作者分别是Alfred Aho,Peter Weinberg ...
- linux sort 命令详解(转 )
linux sort 命令详解 sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比 ...
- linux sort命令学习
linux sort命令以行为单位对文本文件进行排序. 接下来我们会以/tmp/sort_test.txt这个文本文件为例对sort命令的用法进行说明. sh-# cat /tmp/sort_test ...
- 【转】linux sort 命令详解
sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按AS ...
- linux sort 命令详解
sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按AS ...
- Linux sort命令详解
linux之sort用法 sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容, ...
- Linux sort命令使用方法
sort命令在Linux中主要用于对文件进行排序,并将排序结果输出.sort命令输入可以是指定的文件和数据流.本文主要介绍sort命令的基本语法和常见使用实例. sort命令语法 sort命令格式:s ...
随机推荐
- docker 搭建keepalived+nginx高可用
前言 最近工作 中 有用到keepalived,就想着 在 本地 搭建一套环境验证一下相关的功能.因为创建虚拟机比较麻烦,就借助 docker来搭建这样 一套 环境 ,顺带学习 巩固下docker的 ...
- B. Lost Number【CF交互题 暴力】
B. Lost Number[CF交互题 暴力] This is an interactive problem. Remember to flush your output while communi ...
- Java并发基础08. 造成HashMap非线程安全的原因
在前面我的一篇总结(6. 线程范围内共享数据)文章中提到,为了数据能在线程范围内使用,我用了 HashMap 来存储不同线程中的数据,key 为当前线程,value 为当前线程中的数据.我取的时候根据 ...
- UnboundLocalError,探讨Python中的绑定
绑定 将python闭包之前,先梳理一下闭包中的绑定操作. 先看看2个相关的错误 NameError 和UnboundLocalError When a name is not found at al ...
- Golang入门(2):一天学完GO的基本语法
摘要 在配置好环境之后,要研究的就是这个语言的语法了.在这篇文章中,作者希望可以简单的介绍一下Golang的各种语法,并与C和Java作一些简单的对比以加深记忆.因为这篇文章只是入门Golang的第二 ...
- SpringMVC(五):JSON
本文是按照狂神说的教学视频学习的笔记,强力推荐,教学深入浅出一遍就懂!b站搜索狂神说或点击下面链接 https://space.bilibili.com/95256449?spm_id_from=33 ...
- MTK Android 设置下添加一级菜单[ZedielPcbTest]
功能描述:Android7.1.2 设置下添加一级菜单[ZedielPcbTest],点击ZedielPcbTest,启动ZedielPcbTest.apk应用. 编译:需要在out目录删除Settt ...
- python3启动子进程之 os.fork()
python3启动子进程之 os.fork() 先了解python3 os.fork() 使用说明 在生物学家开始克隆研究之前,计算机科学家就拥有成功的克隆历史.他们克隆了进程,尽管他们没有将其称为 ...
- 萌新带你开车上p站(一)
本文作者:萌新 0x01前言 这一系列文章为pwnable.krToddlr’s Bottle的全部题解,其中有三道题目相对而言稍难或者说比较经典,单独成篇,其他题目的题解放在一起发出来. 0x02f ...
- TP5快速入门
一.查询 //order支持使用数组对多个字段的排序,例如order(['order','id'=>'desc']) //group方法只有一个参数,并且只能使用字符串. //having方法只 ...