选项linuxsort命令的用法

linuxsort  时间:2021-01-26  阅读:()

linux sort命令的用法s o rt是在L inux里非常常用的一个命令管排序的集中精力五分钟搞定s o rt现在开始

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

[roc rocket@roc rocke t programming]$ cat seq.txtbananaapp lep e arorange

[rocrocket@rocrocket p rogramming]$so rt se q.txtapp lebananaorangep e ar

2 sort的-u选项

它的作用很简单就是在输出行中去除重复行。

[roc rocket@roc rocke t programming]$ cat seq.txtbanana

app lep e arorangep e ar

[roc rocket@rocrocket programming]$ sort seq.txtapplebananao ran g ep e arpear

[ro crocket@ro crocket programming]$sort-u seq.txtapp lebananaorangep e arp e ar由于重复被-u选项无情的删除了。

3 sort的-r选项sort默认的排序方式是升序如果想改成降序就加个-r就搞定了。[rocro cket@rocrocket progr ammin g]$c at number.txt

1

3

5

2

4

[ro crocket@ro crocket programming]$sort number.txt

1

2

3

4

5

[roc rocket@roc rocke t programming]$ sort -r number.txt

5

4

3

2

1

4 sort的-o选项

由于sort默认是把结果输出到标准输出所以需要用重定向才能将结果写入文件形如sort filename>newfile。

但是如果你想把排序结果输出到原文件中用重定向可就不行了。

[rocrocket@rocrocket programming]$ sort -r number.txt>numb er.txt

[rocrocket@rocrocket programming]$ cat number.txt

[rocrocket@rocrocket p rogramming]$

看竟然将numb er清空了。

就在这个时候 -o选项出现了它成功的解决了这个问题让你放心的将结果写入原文件。这或许也是-o比重定向的唯一优势所在。

[rocro cket@rocrocket progr ammin g]$c at numb er.txt

1

3

5

2

4

[ro crocket@ro crocket programming]$sort-r numbe r.txt -o number.txt

[rocrocket@rocrocket p rogramming]$cat number.txt

5

4

3

2

1

5 sort的-n选项

你有没有遇到过10比2小的情况。我反正遇到过。 出现这种情况是由于排序程序将这些数字按字符来排序了排序程序会先比较1和2显然1小所以就将10放在2前面喽。这也是sort的一贯作风。

我们如果想改变这种现状就要使用-n选项来告诉sort “要以数值来排序”

[rocrocket@rocrocket programming]$ cat number.txt

1

10

19

11

2

5

[roc rocket@roc rocke t programming]$ sort numb er.txt

1

10

11

19

2

5

[rocrocket@rocrocket p rogramming]$so rt-n numb er.txt

1

2

5

10

11

19

6 sort的-t选项和-k选项

如果有一个文件的内容是这样

[roc rocket@roc rocke t programming]$ cat faceb ook.txtbanana:30:5.5app le:10:2.5p e ar:90:2.3orange:20:3.4

这个文件有三列列与列之间用冒号隔开了第一列表示水果类型第二列表示水果数量第三列表示水果价格。

那么我想以水果数量来排序也就是以第二列来排序如何利用sort实现

幸好 sort提供了-t选项后面可以设定间隔符。 是不是想起了cut和paste的-d选项共鸣

指定了间隔符之后就可以用-k来指定列数了。

[roc rocket@roc rocke t programming]$ sort -n-k 2-t :facebook.txtapp le:10:2.5o ran g e:20:3.4banana:30:5.5p e ar:90:2.3

我们使用冒号作为间隔符并针对第二列来进行数值升序排序结果很令人满意。

7其他的sort常用选项

-f会将小写字母都转换为大写字母来进行比较亦即忽略大小写

-c会检查文件是否已排好序如果乱序则输出第一个乱序的行的相关信息最后返回1

-C会检查文件是否已排好序如果乱序不输出内容仅返回1

-M会以月份来排序 比如JAN小于FEB等等

-b会忽略每一行前面的所有空白部分从第一个可见字符开始比较。

HostNamaste$24 /年,美国独立日VPS优惠/1核1G/30GB/1Gbps不限流量/可选达拉斯和纽约机房/免费Windows系统/

HostNamaste是一家成立于2016年3月的印度IDC商家,目前有美国洛杉矶、达拉斯、杰克逊维尔、法国鲁贝、俄罗斯莫斯科、印度孟买、加拿大魁北克机房。其中洛杉矶是Quadranet也就是我们常说的QN机房(也有CC机房,可发工单让客服改机房);达拉斯是ColoCrossing也就是我们常说的CC机房;杰克逊维尔和法国鲁贝是OVH的高防机房。采用主流的OpenVZ和KVM架构,支持ipv6,免...

CloudCone:$17.99/年KVM-1GB/50GB/1TB/洛杉矶MC机房

CloudCone在月初发了个邮件,表示上新了一个系列VPS主机,采用SSD缓存磁盘,支持下单购买额外的CPU、内存和硬盘资源,最低年付17.99美元起。CloudCone成立于2017年,提供VPS和独立服务器租用,深耕洛杉矶MC机房,最初提供按小时计费随时退回,给自己弄回一大堆中国不能访问的IP,现在已经取消了随时删除了,不过他的VPS主机价格不贵,支持购买额外IP,还支持购买高防IP。下面列...

特网云57元,香港云主机 1核 1G 10M宽带1G(防御)

特网云官網特网云服务器在硬件级别上实现云主机之间的完全隔离;采用高端服务器进行部署,同时采用集中的管理与监控,确保业务稳定可靠,搭建纯SSD架构的高性能企业级云服务器,同时采用Intel Haswell CPU、高频DDR4内存、高速Sas3 SSD闪存作为底层硬件配置,分钟级响应速度,特网云采用自带硬防节点,部分节点享免费20G防御,可实现300G防御峰值,有效防御DDoS、CC等恶意攻击,保障...

linuxsort为你推荐
桌面背景图片大全谁能给我个 游戏桌面图标大全苹果x和xr哪个好苹果x,苹果xs,苹果xr,苹果xs max哪个更值得买?浮动利率和固定利率哪个好房贷须知:固定还是浮动利率好宝来和朗逸哪个好宝来和朗逸哪个好三国游戏哪个好玩三国系列的游戏哪个好玩?二手车网站哪个好二手车网站哪家好?哪个信息更可靠?手机浏览器哪个好用手机浏览器哪个好用?dnf魔枪士转职哪个好dnf魔枪士专职哪个红茶和绿茶哪个好红茶和绿茶,哪个好?美国国际集团IDG在美国是干什么的?
免备案虚拟空间 ftp空间 virpus cve-2014-6271 宕机监控 国外免费空间 浙江独立 徐正曦 美国网站服务器 美国堪萨斯 电信虚拟主机 东莞服务器 空间购买 德讯 腾讯云平台 免费的加速器 cx域名 百度新闻源申请 cc加速器 卡巴斯基官方下载 更多