CMD命令行高级教程精选合编---第二章 DOS循环for命令详解.doc

CMD命令行高级教程精选合编---第二章 DOS循环for命令详解.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CMD命令行高级教程精选合编---第二章 DOS循环for命令详解

CMD命令行高级教程精选合编---第二章 DOS循环:for命令详解 第二章 DOS循环:for命令详解 讲FOR之前呢,咋先告诉各位新手朋友,如果你有什么命令不懂,直接在CMD下面输入: name /? 这样的格式来看系统给出的帮助文件,比如for /? 就会把FOR命令的帮助全部显示出来!当然许多菜鸟都看不懂....所以才会有那么多批处理文章!!!!俺也照顾菜鸟,把FOR命令用我自己的方式说明下! 正式开始: 一、基本格式 FOR %%variable IN (set) DO command [command-parameters] ?? %%variable?? 指定一个单一字母表示可替换的参数。 ?? (set) ?? 指定一个或一组文件。可以使用通配符。 ?? command 指定对每个文件执行的命令。 ?? command-parameters ?? ?? ?? 为特定命令指定参数或命令行开关。 参数:FOR有4个参数 /d /l /r /f 他们的作用我在下面用例子解释 现在开始讲每个参数的意思 二、参数 /d FOR /D %%variable IN (set) DO command [command-parameters] 如果集中包含通配符,则指定与目录名匹配,而不与文件 名匹配。 如果 Set (也就是我上面写的 相关文件或命令) 包含通配符(* 和 ?),将对与 Set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的 Command。 这个参数主要用于目录有哪些信誉好的足球投注网站,不会有哪些信誉好的足球投注网站文件,看这样的例子 @echo off for /d %%i in (c:\*) do echo %%i pause 运行会把C盘根目录下的全部目录名字打印出来,而文件名字一个也不显示! 在来一个,比如我们要把当前路径下文件夹的名字只有1-3个字母的打出来 @echo off for /d %%i in (???) do echo %%i pause 这样的话如果你当前目录下有目录名字只有1-3个字母的,就会显示出来,没有就不显示了 这里解释下*号和?号的作用,*号表示任意N个字符,而?号只表示任意一个字符 知道作用了,给大家个思考题目! @echo off for /d %%i in (window?) do echo %%i pause 保存到C盘下执行,会显示什么呢?自己看吧! 显示:windows /D参数只能显示当前目录下的目录名字,这个大家要注意! 三、参数 /R FOR /R [[drive:]path] %%variable IN (set) DO command [command-parameters] 检查以 [drive:]path 为根的目录树,指向每个目录中的 FOR 语句。如果在 /R 后没有指定目录,则使用当前 目录。如果集仅为一个单点(.)字符,则枚举该目录树。 递归 上面我们知道,/D只能显示当前路径下的目录名字,那么现在这个/R也是和目录有关,他能干嘛呢?放心他比/D强大多了! 他可以把当前或者你指定路径下的文件名字全部读取,注意是文件名字,有什么用看例子! 请注意2点: 1、set中的文件名如果含有通配符(?或*),则列举/R参数指定的目录及其下面的所用子目录中与set相符合的所有文件,无相符文件的目录则不列举。 2、相反,如果set中为具体文件名,不含通配符,则枚举该目录树(即列举该目录及其下面的所有子目录),而不管set中的指定文件是否存在。这与前面所说的单点(.)枚举目录树是一个道理,单点代表当前目录,也可视为一个文件。 例: @echo off for /r c:\ %%i in (*.exe) do echo %%i pause 咱们把这个BAT保存到D盘随便哪里然后执行,我会就会看到,他把C盘根目录,和每个目录的子目录下面全部的EXE文件都列出来了!!!! 例: @echo off for /r %%i in (*.exe) do @echo %%i pause 参数不一样了吧!这个命令前面没加那个C:\也就是有哪些信誉好的足球投注网站路径,这样他就会以当前目录为有哪些信誉好的足球投注网站路径,比如你这个BAT你把他放在d:\test目录下执行,那么他就会把D:\test目录和他下面的子目录的全部EXE文件列出来!!! 例: @echo off for /r c:\ %%i in (boot.ini) do echo %%i pause 运行本例发现枚举了c盘所有目录,为了只列举boot.ini存在的目录,可改成下面这样: @echo off for /r c:\ %%i in (boot.ini) do if exist %%i echo %%i pause 用这条命令有哪些信誉好的足球投注网站文件真不错。。。。。。 这个参数大家应

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档