位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享批处理命令教学之字符串排序(sort)(批处理命令教程 pdf),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:批处理命令教程,批处理命令教程 pdf,批处理文件命令大全,批处理命令教程 pdf,批处理常用命令,批处理命令是什么语言,批处理常用命令,批处理常用命令,内容如对您有帮助,希望把文章链接给更多的朋友!

帮助信息:

命令概括:

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

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

参数详解:

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

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

例如:

ip.txt

利用sort进行排序。代码:

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

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

同样对ip.txt进行处理。

代码:

效果:

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

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

3.倒序排列

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

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

效果:

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

代码:

效果:同第一种方法。

说明:

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

所以只要你将/+n中,n的值设置的足够大,此时按文本倒序输出。

由于开篇的ip.txt内容没设置好,导致按字母倒序和按文本倒序产生了相同的结果,事实上这是两种完全不同的排序方法。按字母倒序是根据字母规则(a-z,0-9)进行倒序排列,按文本倒序是将最后一行文本作为第一行,第一行作为最后一行(简而言之就是文本行颠倒)。

例子(由Crlf版主友情提供):

test.bat:

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

ip.txt:

结果:

4.将排序结果输出到文件

①.利用重定向符,将排序结果输出到文件代码:

效果:在当前文件夹中生成hello1.txt,内容为:

②.利用sort的/o参数,将排序结果输出到文件代码:

效果:在当前文件夹中生成hello2.txt,内容同hello1.txt。

两者的差别:

根据微软的机器翻译“指定输出文件比将同一文件作为标准输出重定向速度快”,也就是说/o参数比重定向符(>)快,这个不好实际测试,有这么个映象就可以了。

5.对/m,/t参数的一些说明

/m参数是用来指定参与排序的内存,换句话说就是“你分多少内存(单位kb)给sort命令排序”。

/t参数是用来指定缓存文件的目录,举个例子来说,我要处理8m的大文本,指定内存为kb,kb怎么装得下8m的文件?这时怎么办呢?——(按1m=kb算)先将kb装入内存,再将剩下的kb分次装入内存,缓存文件放在/t指定的目录中。

例如:

.txt是一个8m的文本(要做测试的同学,可以到网上下本小说)。代码:

说明:.txt是一本小说,用sort排序之后自然是“惨不忍睹”的,对于结果没有什么好说的,主要说说这行代码运行后产生的一些问题。

问题1.运行代码后,提出警告信息“警告: 做大量排序时使用重定向输出通常比直接指定输出文件名称来排序慢。”——这个前面说过了“/o参数比重定向符(>)快”。

问题2.运行代码后,在目录C:dcache中产生了一个以“srt”+进制随机数命名的.tmp文件,出现过几秒,后被系统删除(没用/t参数指定的目录时,默认缓存文件目录是%temp%)。

问题3.当我将/m指定的内存数kb变为kb(kb是sort命令默认的最小内存)时,竟然提示“没有足够的内存,无法完成排序。”

由问题引出的简单思考:

既然是简单思考,自然不会分析的太过深入。

问题1.如果说/o比重定向符(>)快,而且有时用重定向符(>)还会出现“警告”,那么完全可以舍弃重定向符(>),只要想输出排序结果就用/o参数。

问题2.缓存文件产生的原因是指定了内存的大小,不指定就不会出现,也就是说“不用/m参数就不会出现缓存文件,而不用/m参数,/t参数也没用”。

问题3.不指定用于排序的内存大小,就不会提示“内存不足”,那么不用/m参数不就好了。

总结:sort的/m,/t参数完全可以不用。估计这两个参数,是为了dos时代而准备的,现在的电脑内存——我这台“老爷机”都有1G的内存,实在想不出为了区区几十M的文件分配内存有什么意义。

6./rec参数(指定sort能处理的最大行)

这里的“最大行”,不是说文本中有多少行,而是说一行中最多可以含有多少字符数。

sort命令默认的文本最大行含有个字符(2的次幂),最多可以含有个字符。

这里设置了一个特殊的文本a.txt来加以说明。

a.txt中一共含有2行文本,每行文本含有个字符。

代码和结果:

没讲的内容,/l参数,这个是区域设置相关,我也没弄懂。

批处理命令教学之复合语句连接符(&、&&和||) 帮助信息:&[...]command1&command2用来分隔一个命令行中的多个命令。Cmd.exe运行第一个命令,然后运行第二个命令。&&[...]command1&&command2只有在符号&&前面的

批处理命令教学之管道符号(|) 管道符(|)的作用是将符号前的进程输出,当做符号后进程的输入。例如:有两条命令,dir/s/b/a和find".txt",第一条显示当前文件夹中的所有文件、文件

Windows7下获得System权限问题解决方法 Windows7下MS加强了权限的问题,但这个神秘的无处不在的system居然比administrator还大而又不能登录实在是让人不能理解,特别是很多的目录居然都要system的

标签: 批处理命令教程 pdf

本文链接地址:https://www.jiuchutong.com/biancheng/371686.html 转载请保留说明!

上一篇:批处理命令教学之more命令(批处理常用命令)

下一篇:批处理命令教学之复合语句连接符(&、&&和||)(批处理文件命令大全)

  • 已申报税额和已缴纳税额
  • 什么叫差额征税呢
  • 增值税一般纳税人税率
  • 房屋合同印花税税率属于个人交的吗
  • 外聘人员需要申报个税吗
  • 国家对小微企业扶持有哪些政策
  • 银行付款回单怎么看
  • 购销行为的帐务处理如何做?
  • 独生子女保健费发到孩子多大年纪
  • 股权转让如何避免缴纳个税
  • 增值税普票未上传怎么办
  • 特许权使用费个税计算公式
  • 技术转让所得减去成本吗
  • 2008版增值税普通发票图片
  • 水利建设专项收入怎么计算
  • 为什么预计负债是递延所得税资产
  • 公司增资需要什么
  • 小规模纳税人会计核算健全,能够提供准确
  • 税务稽查可以不罚款的情形
  • 企业社保缴费工资
  • 合伙企业生产经营所得
  • 存出投资款要计入现金流吗
  • PHP:mb_http_output()的用法_mbstring函数
  • 行政事业单位预算由收入预算、支出预算组成
  • 对于接受捐赠的固定资产,其成本应当依次按照
  • 分级核算下的建议有哪些
  • win10telnet不是内部或外部命令教程
  • 石楠花 开花
  • 坏账准备 结转
  • 将自产的应税消费品用于连续生产应税消费品
  • php用img显示图片
  • 增值税进项发票丢失最新处理办法
  • php 遍历树
  • python pymongo
  • 内存分配理解是什么
  • 残差网络中的残差指的是什么
  • 超参数及其作用
  • 调戏chatGPT(二)下围棋
  • 职工教育经费是否可以抵扣进项税
  • 出口退税的一般程序
  • phpcms栏目分类
  • 软件开发增值税即征即退政策
  • 先做凭证再付款
  • 增值税不动产扣除项目
  • 企业所有者权益是什么意思
  • 固定资产清理净损益怎么计算出来的
  • 股份有限公司个人股份
  • SqlServer中用exec处理sql字符串中含有变量的小例子
  • 结账与对账的共同意义在于
  • 工会经费计提基数包括奖金吗
  • 小微企业增资
  • 单独入账的土地为啥不提折旧
  • 社保扣费不成功会再次扣费吗
  • 基本医疗保险费是医保吗
  • 期末调汇汇兑损益科目
  • 建筑业确认收入的条件
  • 新成立公司会计要做哪些事情
  • 客运运价杂费收据填写例题
  • mysql中的存储过程
  • shell 加密密码
  • raid1 hot spare
  • sendmailadmin
  • soapui安装与配置
  • 定时清理注册表会怎么样
  • LINUX系统下MySQL 压力测试工具super smack
  • linux图形界面与命令行
  • windows mobile
  • red hat linux怎么用
  • 如何解决win7系统中鼠标键盘不能用
  • window10自动维护功能有什么用
  • 详细测试就是全部测试
  • cssid和class的区别
  • perl数组去重
  • js判断元素是否显示
  • jquery实现隔行变色的分享特效页面
  • nodejs使用视频教程
  • javascript的引用类型
  • unity3ds
  • Python3使用requests发闪存的方法
  • 江苏省南京市国医堂
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设