批处理命令教学之字符串排序(sort)

2019-09-19 06:40:33王振洲

命令概括:

sort,意为“以……排序”。

/r,全英文reverse,意为“颠倒”。
/+n,还是number,意为“数字”。
/m,全英文memory,意为“内存”。
/l,全英文locale,意为“场所”,引申为“区域设置”。
/rec,全英文record,意为“记录”。
/t,全英文temporary,意为“临时的”。
/o,全英文output,意为“输出”。

参数详解:

1.不带任何参数的sort命令

不带任何参数的sort命令,比较第一个字符的大小(字母不区分大小写),按“顺序排列”输出(a-z,0-9)。

例如:

ip.txt

apple
believe
change
desktop
everything
flight
ground
hello
ignore
joke
knowledge
little
memory
normal
outside
Police
quickly
refrigerator
smell
technology
until
violin
water
xenophobia
yellow
zero

利用sort进行排序。
代码:


C:UsersHELLOW~1Desktop>sort ip.txt

结果:
和ip.txt一摸一样,因为ip.txt中的单词第一个字符顺序都是按“a-z”排列的。

2.利用sort,按单词的第二个字符顺序排列

同样对ip.txt进行处理。

代码:


C:UsersHELLOW~1Desktop>sort /+2 ip.txt

效果:


water
technology
refrigerator
believe
hello
yellow
memory
xenophobia
zero
desktop
ignore
change
violin
little
flight
smell
knowledge
until
joke
Police
normal
apple
ground
quickly
outside
everything

这一次的排序是按照第二个字符的“顺序排列”(a-z)进行排列的。

结合1、2节不难看出,其实sort ip.txt 的效果等同于 sort /+1 ip.txt。

3.倒序排列

既然可以123,自然可以321。sort命令也可以倒序排列并输出。

①.通常的倒序方法(按字母倒序)
代码:


sort /r ip.txt

效果:


zero
yellow
xenophobia
water
violin
until
technology
smell
refrigerator
quickly
Police
outside
normal
memory
little
knowledge
joke
ignore
hello
ground
flight
everything
desktop
change
believe
apple

②.特殊的倒序方法(按文本倒序,由Crlf版主友情提供)

代码:


sort /+13 ip.txt

效果:
同第一种方法。

说明:

ip.txt中最长的单词是“refrigerator”,合计有12个字母,这里sort 比较第13个字母的大小,但是所有的单词都没有13个字母(最长的才12),此时按文本倒序排列。

相关文章 大家在看