标题: [代码合集] sort命令默认是怎么排序的? [打印本页]
作者: BS0小陈 时间: 2011-11-16 16:07 标题: sort命令默认是怎么排序的?
- 今天学习sort
- 我的代码是:sort /+8<1.txt
- 其结果是:
- !@#$%%^
- a
- 32
- 002
- 01
- 635464316874321346461
- aaaaa555
- aaaaaaaaaaaaaaaaa
- cccccccccccc5555
- dddddddddddddddd
- dh sadjkgf
- cgbvjlug
- ***ldfkgopiahd
- );ldkahfa
- kasjdhfa
- klsdfyhkcbv
- &kajsdhfpioa
- ***aldksfjaoisdf
- 不明白,sort默认怎么排序的,/+8之前是怎么排序的,非字符数字的符号怎么排序的?
复制代码
作者: CrLf 时间: 2011-11-16 16:10
系统帮助的内容: /+n 指定开始每个比较的字符号码 n。/+3 说明每个
比较应从每行的第三个字符开始。少于 n 个字符
的行排在其他行之前。按默认值,从每行的第一
个字符开始比较。
作者: bluewing009 时间: 2011-11-16 16:26
回复 2# CrLf
那么32怎么回在002和01前面呢?
作者: canyuexiaolang 时间: 2011-11-16 17:47
回复 3# bluewing009
32是两位数,002 是三个...
额...
作者: CrLf 时间: 2011-11-16 18:01
本帖最后由 CrLf 于 2011-11-16 18:29 编辑
大发现,原来 sort /+超过行最大字数时,将逆序输出。
那么...- @echo off
- sort /+30 %0>将自身逆序输出.txt
- pause
- ::test
- rem 测试
复制代码
寒夜版主对此这样解释(非原话,我有可能曲解):
sort 应该是先把文件载入内存,再倒序向上比较大小,符合时输出符合的内容,不符合时输出当前行,总之是先入后出。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |