仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 803|回复: 13
打印 上一主题 下一主题

[其他Linux] Linux制作之《sort帮你排序》-linux命令五分钟系列之二十六仓酷云

[复制链接]
若天明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:25:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间。
sort是在Linux里十分经常使用的一个命令,管排序的,会合精神,五分钟弄定sort,如今入手下手!
1sort的事情道理
sort将文件的每行作为一个单元,互相对照,对照准绳是从首字符向后,顺次按ASCII码值举行对照,最初将他们按升序输入。
[rocrocket@rocrocketprogramming]$catseq.txt
banana
apple
pear
orange
[rocrocket@rocrocketprogramming]$sortseq.txt
apple
banana
orange
pear
2sort的-u选项
它的感化很复杂,就是在输入行中往除反复行。
[rocrocket@rocrocketprogramming]$catseq.txt
banana
apple
pear
orange
pear
[rocrocket@rocrocketprogramming]$sortseq.txt
apple
banana
orange
pear
pear
[rocrocket@rocrocketprogramming]$sort-useq.txt
apple
banana
orange
pear
pear因为反复被-u选项无情的删除。
3sort的-r选项
sort默许的排序体例是升序,假如想改成降序,就加个-r就弄定了。
[rocrocket@rocrocketprogramming]$catnumber.txt
1
3
5
2
4
[rocrocket@rocrocketprogramming]$sortnumber.txt
1
2
3
4
5
[rocrocket@rocrocketprogramming]$sort-rnumber.txt
5
4
3
2
1
4sort的-o选项
因为sort默许是把了局输入到尺度输入,以是必要用重定向才干将了局写进文件,形如sortfilename>newfile。
可是,假如你想把排序了局输入到原文件中,用重定向可就不可了。
[rocrocket@rocrocketprogramming]$sort-rnumber.txt>number.txt
[rocrocket@rocrocketprogramming]$catnumber.txt
[rocrocket@rocrocketprogramming]$
看,居然将number清空了。
就在这个时分,-o选项呈现了,它乐成的办理了这个成绩,让你宁神的将了局写进原文件。这也许也是-o比重定向的独一上风地点。
[rocrocket@rocrocketprogramming]$catnumber.txt
1
3
5
2
4
[rocrocket@rocrocketprogramming]$sort-rnumber.txt-onumber.txt
[rocrocket@rocrocketprogramming]$catnumber.txt
5
4
3
2
1
5sort的-n选项
你有无碰到过10比2小的情形。我归正碰到过。呈现这类情形是因为排序程序将这些数字按字符来排序了,排序程序会先对照1和2,明显1小,以是就将10放在2后面喽。这也是sort的一向风格。
我们假如想改动这类近况,就要利用-n选项,来告知sort,“要以数值来排序”!
[rocrocket@rocrocketprogramming]$catnumber.txt
1
10
19
11
2
5
[rocrocket@rocrocketprogramming]$sortnumber.txt
1
10
11
19
2
5
[rocrocket@rocrocketprogramming]$sort-nnumber.txt
1
2
5
10
11
19
6sort的-t选项和-k选项
假如有一个文件的内容是如许:
[rocrocket@rocrocketprogramming]$catfacebook.txt
banana:30:5.5
apple:10:2.5
pear:90:2.3
orange:20:3.4
这个文件有三列,列与列之间用冒号离隔了,第一列暗示生果范例,第二列暗示生果数目,第三列暗示生果代价。
那末我想以生果数目来排序,也就是以第二列来排序,怎样使用sort完成?
幸亏,sort供应了-t选项,前面能够设定距离符。(是否是想起了cut和paste的-d选项,共识~~)
指定了距离符以后,就能够用-k来指定列数了。
[rocrocket@rocrocketprogramming]$sort-n-k2-t:facebook.txt
apple:10:2.5
orange:20:3.4
banana:30:5.5
pear:90:2.3

开发linux发行版的人都是通读过linux内核代码,对linux原理极其精通的人。
再见西城 该用户已被删除
沙发
发表于 2015-1-21 06:07:57 | 只看该作者
任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
柔情似水 该用户已被删除
板凳
发表于 2015-1-21 06:07:57 | 只看该作者
熟读Linux系统有关知识,如系统目录树,有关内容可购书阅读或搜索论坛。
乐观 该用户已被删除
地板
发表于 2015-1-25 16:22:50 | 只看该作者
放手去搞。尽量不要提问,运用搜索找答案,或者看wiki,从原理上理解操作系统的本质,而不是满足于使用几个技巧。尽量看英文资料。
不帅 该用户已被删除
5#
发表于 2015-1-26 13:42:58 | 只看该作者
Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。
小女巫 该用户已被删除
6#
发表于 2015-2-4 14:52:55 | 只看该作者
笔者五分钟后就给出了解决方法: “首先备份原文件到其他目录,然后删掉/usr/local/unispim/unispimsp.ksc,编辑 /usr/local/unispim/unispimsp.ini,最后重启动计算机
谁可相欹 该用户已被删除
7#
发表于 2015-2-10 01:59:08 | 只看该作者
一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
冷月葬花魂 该用户已被删除
8#
发表于 2015-2-28 14:31:21 | 只看该作者
就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务
小妖女 该用户已被删除
9#
发表于 2015-3-1 01:24:02 | 只看该作者
其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。
若相依 该用户已被删除
10#
发表于 2015-3-10 11:13:31 | 只看该作者
然我们对Linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。
只想知道 该用户已被删除
11#
发表于 2015-3-10 21:46:35 | 只看该作者
通过一条缓慢的调制解调器线路,它也能操纵几千公里以外的远程系统。
小魔女 该用户已被删除
12#
发表于 2015-3-11 03:10:25 | 只看该作者
Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。
莫相离 该用户已被删除
13#
发表于 2015-3-17 19:10:48 | 只看该作者
通过一条缓慢的调制解调器线路,它也能操纵几千公里以外的远程系统。
因胸联盟 该用户已被删除
14#
发表于 2015-3-24 21:35:48 | 只看该作者
要增加自己Linux的技能,只有通过实践来实现了。所以,赶快找一部计算机,赶快安装一个Linux发行版本,然后进入精彩的Linux世界,相信对于你自己的Linux能力必然大有斩获。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 00:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表