下载

1下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 学习批处理命令

学习批处理命令.doc

学习批处理命令

longdi
2010-12-06 0人阅读 举报 0 0 暂无简介

简介:本文档为《学习批处理命令doc》,可适用于IT/计算机领域

学习批处理命令学习批处理命令阅读本文需要一定的dos基础概念象:盘符、文件、目录(文件夹)、子目录、根目录、当前目录  每个命令的完整说明请加参数参考微软的帮助文档可以看到在帮助里"命令扩展名"一词会经常出现"命令扩  展名"是指相对于win的dos版本而言每个命令新增的功能  命令测试环境winproSPwin的命令功能太少就不作研究了  注:如果对某一命令还不是很熟悉可以在命令行窗口下输入:命令名的方式来获得帮助。  例如:对dir命令的应用不熟悉可以在命令行窗口下输入:  dir  echo和回显控制命令                #关闭单行回显  echooff        #从下一行开始关闭回显  echooff        #从本行开始关闭回显。一般批处理第一行都是这个  echoon          #从下一行开始打开回显  echo            #显示当前是echooff状态还是echoon状态  echo          #输出一个"回车换行"一般就是指空白行  echohelloworld    #输出helloworld  "关闭回显"是指运行批处理文件时不显示文件里的每条命令只显示运行结果批处理开始和结束时系统都会自动打开  回显  errorlevel程序返回码  echoerrorlevel每个命令运行结束可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为  一般命令执行出错会设errorlevel为  dir显示目录中的文件和子目录列表  dir            #显示当前目录中的文件和子目录  dira          #显示当前目录中的文件和子目录包括隐藏文件和系统文件  dirc:a:d      #显示C盘当前目录中的目录  dirc:a:d    #显示C盘根目录中的文件dird:mpbp    #逐屏显示d:mp目录里的文件只显示文件  名不显示时间和大小  dir*exes显示当前目录和子目录里所有的exe文件其中*是通配符代表所有的文件名还一个通配符代表一个  任意字母或汉字如c**代表以c开头的所有文件exe代表所有文件名是一个字母的exe文件如果指定的目录或文件  不存在将返回errorlevel为每个文件夹的dir输出都会有个子目录和代表当前目录代表当前目录的  上级目录  dir          #显示当前目录中的文件和子目录  dir          #显示当前目录的上级目录中的文件和子目录  其它参数可参考dir  cd更改当前目录  cdmp          #进入当前目录中的mp目录  cd          #进入当前目录中的上级目录  cd            #进入根目录  cd            #显示当前目录  cddd:mp      #可以同时更改盘符和目录  cd"DocumentsandSettings"Allusers文件名带空格路径前需要加上引号!!如果更改到的目录不存在则出错返  回errorlevel=  md创建目录  mdabc          #在当前目录里建立子目录abc  mdd:abc      #如果d:a不存在将会自动创建  rd删除目录  rdabc          #删除当前目录里的abc子目录要求为空目录nbsp  rdsqd:temp    #删除d:temp文件夹及其子文件夹和文件不需要按Y确认  del删除文件  deld:testtxt    #删除指定文件不能是隐藏、系统、只读文件  del**删除当前目录里的所有文件不包括隐藏、系统、只读文件要求按Y确认  delqafd:temp**删除d:temp文件夹里面的所有文件包括隐藏、只读、系统文件不包括子目录  delqafsd:temp**删除d:temp及子文件夹里面的所有文件包括隐藏、只读、系统文件不包括子目录  ren文件重命名  rentxtbak    #把txt更名为bak  ren*txt*ini    #把当前目录里所有txt文件改成ini文件  rend:temptmp    #支持对文件夹的重命名  cls清屏  type显示文件内容  typec:bootini  #显示指定文件的内容程序文件一般会显示乱码  type*txt      #显示当前目录里所有txt文件的内容  copy拷贝文件  copyc:testtxtd:复制c:testtxt文件到d:  copyc:testtxtd:testbak复制c:testtxt文件到d:并重命名为testbak  copyc:**复制c:所有文件到当前目录不包括隐藏文件和系统文件不指定目标路径则默认目标路径为当前目录  copycontesttxt从屏幕上等待输入按CtrlZ结束输入输入内容存为testtxt文件con代表屏幕prn代表打印机  nul代表空设备  copytxttxttxt合并txt和txt的内容保存为txt文件如果不指定txt则保存到txt  copytesttxt复制文件到自己实际上是修改了文件日期  title设置cmd窗口的标题  title新标题      #可以看到cmd窗口的标题栏变了  ver显示系统版本  label和vol设置卷标  vol            #显示卷标  label          #显示卷标同时提示输入新卷标  labelc:system    #设置C盘的卷标为system  pause暂停命令  运行该命令时将显示下面的消息:请按任意键继续  一般用于看清楚屏幕上显示的内容  rem和::注释命令  注释行不执行操作  date和time日期和时间  date      #显示当前日期并提示输入新日期按"回车"略过输入  datet      #只显示当前日期不提示输入新日期  time      #显示当前时间并提示输入新时间按"回车"略过输入  timet      #只显示当前时间不提示输入新时间  goto和:跳转命令  :label      #行首为:表示该行是标签行标签行不执行操作  gotolabel  #跳转到指定的标签那一行  find(外部命令)查找命令  find"abc"c:testtxt在c:testtxt文件里查找含abc字符串的行如果找不到将设errorlevel返回码为  findi"abc"c:testtxt查找含abc的行忽略大小写  findc"abc"c:testtxt显示含abc的行的行数  more(外部命令)逐屏显示  morec:testtxt  #逐屏显示c:testtxt的文件内容  tree显示目录结构  treed:        #显示D盘的文件目录结构  顺序执行多条命令而不管命令是否执行成功  c:cddirw相当于把下面行命令写到行去了c:cddirw  顺序执行多条命令当碰到执行出错的命令后将不执行后面的命令  f:cddir>c:testtxt注意如果f盘不存在那么后面条命令将不会执行  find"ok"c:testtxtecho成功如果找到了"ok"字样就显示"成功"找不到就不显示  ||顺序执行多条命令当碰到执行正确的命令后将不执行后面的命令  find"ok"c:testtxt||echo不成功如果找不到"ok"字样就显示"不成功"找到了就不显示  |管道命令  前一个命令的执行结果输出到后一个命令  dir**sa|findc"exe"管道命令表示先执行dir命令对其输出的结果执行后面的find命令该命令行结果:  输出当前文件夹及所有子文件夹里的exe文件的个数  typec:testtxt|more这个和morec:testtxt的效果是一样的  >和>>输出重定向命令  >清除文件中原有的内容后再写入>>追加内容到文件末尾而不会清除原有的内容主要将本来显示在屏幕上的内容输出  到指定文件中指定文件如果不存在则自动生成该文件  echohelloworld>c:testtxt生成c:testtxt文件内容为helloworld这个格式在批处理文件里用得很多可以生成  regbatvbs等临时文件  typec:testtxt>prn屏幕上不显示文件内容转向输出到打印机  echohelloworld>con在屏幕上显示helloworld实际上所有输出都是默认>con的  copyc:testtxtf:>nul拷贝文件并且不显示"文件复制成功"的提示信息但如果f盘不存在还是会显示出错信息  copyc:testtxtf:>nul>nul不显示"文件复制成功"的提示信息并且f盘不存在的话也不显示错误提示信息  echo^^W^>^W>c:testtxt生成的文件内容为^W>W^和>是控制命令要把它们输出到文件必须在前面加个^  符号  <从文件中获得输入信息而不是从屏幕上  一般用于datetimelabel等需要等待输入的命令  echooffecho>temptxtdate<temptxtdeltemptxt这样就可以不等待输入直接修改当前日期  *命令行传递给批处理的参数  批处理文件本身第一个参数第九个参数*从第一个参数开始的所有参数  在C盘根目录新建testbat内容如下:  echooffechoechoechoecho*  运行cmd输入c:testbat"a"bcd可以看出每个参数的含意  修改testbat内容如下  echooffechoecho~echoecho~fecho~decho~pecho~necho~xecho~secho~aecho  ~techo~z  再运行cmd输入c:testbat"a"bcd可以参照call或for看出每个参数的含意注意这里可以对文件进行  日期比较和大小比较  echoload"""">c:testtxt生成的文件内容为load""""批处理文件里用这个格式把命令行参数输出到  文件  set设置变量  引用变量可在变量名前后加即变量名  set              #显示目前所有可用的变量包括系统变量和自定义的变量  echoSystemDrive    #显示系统盘盘符。系统变量可以直接引用  setp            #显示所有以p开头的变量要是一个也没有就设errorlevel=  setp=aabbaabb    #设置变量p并赋值为=后面的字符串即aabbaabb  echop          #显示变量p代表的字符串即aabbaabb  echop:~        #显示变量p中第个字符以后的所有字符即aabb  echop:~,      #显示第个字符以后的个字符即aa  echop:~,      #显示前个字符即aa  echop:~        #显示最后面的个字符即b  echop:~,      #显示除了最后个字符以外的其它字符即aabbaab  echop:aa=c      #用c替换变量p中所有的aa即显示cbbcbb  echop:aa=        #将变量p中的所有aa字符串置换为空即显示bbbb  echop:*bb=c      #第一个bb及其之前的所有字符被替换为c即显示caabb  setp=p:*bb=c      #设置变量p赋值为p:*bb=c即caabb  setap=  nbsp    #设置p为数值型变量值为  setap=      #支持运算符有小数时用去尾法=去尾得p=setap=p      #用a  参数时在=后面的变量可以不加直接引用setap=""      #"与"运算要加引号。其它支持的运算符参见  set  setp=            #取消p变量  setpp=请输入屏幕上显示"请输入"并会将输入的字符串赋值给变量p注意这条可以用来取代choice命令  注意变量在if和for的复合语句里是一次性全部替换的如  echooff  setp=aaa  ifp==aaa(  echop  setp=bbb  echop  )  结果将显示aaaaaa因为在读取if语句时已经将所有p替换为aaa这里的"替换"在帮助里就是指"扩充"、"环境  变量扩充"可以启用"延缓环境变量扩充"用!来引用变量即!变量名!  echooff  SETLOCALENABLEDELAYEDEXPANSION  setp=aaaifp==aaa(  echop  setp=bbb  echo!p!  )  ENDLOCAL  结果将显示aaabbb  还有几个动态变量运行set看不到  CD            #代表当前目录的字符串  DATE          #当前日期  TIME          #当前时间  RANDOM          #随机整数介于~  ERRORLEVEL      #当前ERRORLEVEL值  CMDEXTVERSION    #当前命令处理器扩展名版本号  CMDCMDLINE      #调用命令处理器的原始命令行可以用echo命令查看每个变量值如echotime注意time  精确到毫秒在批处理需要延时处理时可以用到  start批处理中调用外部程序的命令否则等外部程序完成后才继续执行剩下的指令  startexplorerd:调用图形界面打开D盘  echooffcdd~dpregedits劲舞团regstartpatcherexe  不加start命令的话"劲舞团"运行时后面会有个黑乎乎的cmd窗口  call批处理中调用另外一个批处理的命令否则剩下的批处理指令将不会被执行有时有的应用程序用start调用出错的  也可以call调用  choice(外部命令)选择命令让用户输入一个字符从而选择运行不同的命令返回码errorlevel为……win里  是choicecomwinpro里没有可以从win里拷过来win里是choiceexechoiceNCyTDy>nul延时秒  下面是个choice语句的例子  echooff  rem以下在winpro运行通过从win里拷的chiocecom文件  choicec:abcaaa,bbb,ccc  iferrorlevelgotoccc  iferrorlevel==gotobbb  iferrorlevel==gotoaaa  rem必须先判断数值高的返回码rem可以看到errorlevel值的判断有种写法有时某种写法不好用可以用另外的写法  rem直接运行  chioce相当于运行  choicec:yn:aaa  echoaaa  gotoend  :bbb  echobbb  gotoend  :ccc  echoccc  gotoend  :end  assoc和ftype文件关联assoc设置'文件扩展名'关联关联到'文件类型'ftype设置'文件类型'关联关联到'执行程序和参数'当你双击一个txt文件时windows并不是根据txt直接判断用notepadexe打开而是先判断txt属于txtfile'文件类型'再调用txtfile关联的命令行txtfile=SystemRootsystemNOTEPADEXE可以在"文件夹选项"→"文件类型"里修改这种关联  assoc        #显示所有'文件扩展名'关联  assoctxt    #显示txt代表的'文件类型'结果显示txt=txtfile  assocdoc    #显示doc代表的'文件类型'结果显示doc=WordDocument  assocexe    #显示exe代表的'文件类型'结果显示exe=exefile  ftype        #显示所有'文件类型'关联  ftypeexefile  #显示exefile类型关联的命令行结果显示exefile=""*assoctxt=WordDocument设置txt为word类型的文档可以看到txt文件的图标都变了  assoctxt=txtfile恢复txt的正确关联ftypeexefile=""*恢复exefile的正确关联  如果该关联已经被破坏可以运行commandcom再输入这条命令  pushd和popd切换当前目录  echooff  c:cdmdmp    #在C:建立mp文件夹  mdd:mp          #在D:建立mp文件夹  cddd:mp        #更改当前目录为d:mp  pushdc:mp        #保存当前目录并切换当前目录为c:mp  popd              #恢复当前目录为刚才保存的d:mp一般用处不大在当前目录名不确定时会有点帮助  subst(外部命令)映射磁盘。  substz:serverd    #这样输入z:就可以访问serverd了  substz:d        #取消该映射  subst            #显示目前所有的映  xcopy(外部命令)文件拷贝  xcopyd:mpe:mpseiy复制d:mp文件夹、所有子文件夹和文件到e:覆盖已有文件加i表示如果e:没有mp文件夹就自动新建一个否则会有询问  一些不常用的内部命令  >将一个句柄的输出写入到另一个句柄的输入中  <从一个句柄读取输入并将其写入到另一个句柄输出中shift命令行传递给批处理的参数不止个时用以切换参数color设置cmd窗口的显示颜色  pormpt更改命令提示符号默认都是盘符:路径>如c:>  format(外部命令)格式化硬盘  formatc:quautotestq表示快速格式化autotest表示自动格式化不需要按Y确认u表示每字节用  F覆盖硬盘数据使其不可用软件恢复formatc:c格式化C盘并检测坏道  fdisk(外部命令)硬盘分区win不带  该命令win里的fdisk不支持G以上大硬盘winme里的支持fdiskmbr重建硬盘分区表一般用于清除引导区病毒、还  原精灵注意使用该命令不能从硬盘启动必须软驱或光驱启动后直接运行  ping(外部命令)  pinglt不停的向计算机发送大小为byte的数据包  pingn>nulping自己次可用于批处理延时秒  SC(外部命令)服务控制命令  sccreateaaadisplayname=bbbstart=autobinpath="C:WINDOWSSystemalgexe"创建服务服务名称aaa显示名称bbb启动类型:自动可执行文件的路径"C:WINDOWSSystemalgexe"  scdescriptionaaa"ccc"更改aaa的描述为ccc  scconfigaaastart=disabledbinpath="C:WINDOWSSystemsvchostexeknetsvcs"更改aaa的启动类型:已禁用更改aaa的可执行文件的路径"C:WINDOWSSystemsvchostexeknetsvcs"  scconfigaaastart=demanddisplayname=ddd更改aaa的启动类型:手动更改aaa的显示名称ddd  scstartaaa启动aaa服务  scstopaaa停止aaa服务  scdeleteaaa删除aaa服务

VIP免券下载文档

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/16

学习批处理命令

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利