1、CMD 命令大全及详细解释和语法命令大全及详细解释和语法 有关某个命令的详细信息,请键入 HELP 命令名 ASSOC 显示或修改文件扩展名关联。 AT 计划在计算机上运行的命令和程序。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式 CTRL+C 检查。 CACLS 显示或修改文件的访问控制列表(ACLs)。 CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 C
2、OLOR 设置默认控制台前景和背景颜色。 COMP 比较两个或两套文件的内容。 COMPACT 显示或更改 NTFS 分区上文件的压缩。 CONVERT 将 FAT 卷转换成 NTFS。您不能转换当前驱动器。 COPY 将至少一个文件复制到另一个位置。 DATE 显示或设置日期。 DEL 删除至少一个文件。 DIR 显示一个目录中的文件和子目录。 DISKCOMP 比较两个软盘的内容。 DISKCOPY 将一个软盘的内容复制到另一个软盘。 DOSKEY 编辑命令行、调用 Windows 命令并创建宏。 ECHO 显示消息,或将命令回显打开或关上。 ENDLOCAL 结束批文件中环境更改的本地化
3、。 ERASE 删除至少一个文件。 EXIT 退出 CMD.EXE 程序(命令解释程序)。 FC 比较两个或两套文件,并显示不同处。 FIND 在文件中搜索文字字符串。 FINDSTR 在文件中搜索字符串。 FOR 为一套文件中的每个文件运行一个指定的命令。 FORMAT 格式化磁盘,以便跟 Windows 使用。 FTYPE 显示或修改用于文件扩展名关联的文件类型。 GOTO 将 Windows 命令解释程序指向批处理程序中某个标明的行。 GRAFTABL 启用 Windows 来以图像模式显示扩展字符集。 IF 执行批处理程序中的条件性处理。 LABEL 创建、更改或删除磁盘的卷标。 MD
4、 创建目录。 MKDIR 创建目录。 MODE 配置系统设备。 MORE 一次显示一个结果屏幕。 MOVE 将文件从一个目录移到另一个目录。 PATH 显示或设置可执行文件的搜索路径。 PAUSE 暂停批文件的处理并显示消息。 POPD 还原 PUSHD 保存的当前目录的上一个值。 PRINT 打印文本文件。 PROMPT 更改 Windows 命令提示符。 PUSHD 保存当前目录,然后对其进行更改。 RD 删除目录。 RECOVER 从有问题的磁盘恢复可读信息。 REM 记录批文件或 CONFIG.SYS 中的注释。 REN 重命名文件。 RENAME 重命名文件。 REPLACE 替换文
5、件。 RMDIR 删除目录。 SET 显示、设置或删除 Windows 环境变量。 SETLOCAL 开始批文件中环境更改的本地化。 SHIFT 更换批文件中可替换参数的位置。 SORT 对输入进行分类。 START 启动另一个窗口来运行指定的程序或命令。 SUBST 将路径跟一个驱动器号关联。 TIME 显示或设置系统时间。 TITLE 设置 CMD.EXE 会话的窗口标题。 TREE 以图形模式显示驱动器或路径的目录结构。 TYPE 显示文本文件的内容。 VER 显示 Windows 版本。 VERIFY 告诉 Windows 是否验证文件是否已正确写入磁盘。 VOL 显示磁盘卷标和序列号
6、。 XCOPY 复制文件和目录树。 * 以下是每个命令的详细解释及用法 * 显示或修改文件扩展名关联 ASSOC .ext=fileType .ext 指定跟文件类型关联的文件扩展名 fileType 指定跟文件扩展名关联的文件类型 键入 ASSOC 而不带参数,显示当前文件关联。如果只用文件扩展 名调用 ASSOC,则显示那个文件扩展名的当前文件关联。如果不为 文件类型指定任何参数,命令会删除文件扩展名的关联。 AT 命令安排在特定日期和时间运行命令和程序。 要使用 AT 命令,计划服务必须已在运行中。 AT computername id /DELETE | /DELETE /YES AT
7、 computername time /INTERACTIVE /EVERY:date,. | /NEXT:date,. command computername 指定远程计算机。 如果省略这个参数,会计划在本地计算机上运行命令。 id 指定给已计划命令的识别号。 /delete 删除某个已计划的命令。如果省略 id,计算机上所有已计划的命令都会被删除。 /yes 不需要进一步确认时,跟删除所有作业的命令一起使用。 time 指定运行命令的时间。 /interactive 允许作业在运行时,与当时登录的用户桌面进行交互。 /every:date,. 每个月或每个星期在指定的日期运行命令。如果省
8、略日期,则默认为在每月的本日运行。 /next:date,. 指定在下一个指定日期(如,下周四)运行命令。如果省略日期,则默认为在每月的本日运行。 command 准备运行的 Windows NT 命令或批处理程序。 * 显示或更改文件属性。 ATTRIB +R | -R +A | -A +S | -S +H | -H drive: path filename /S /D + 设置属性。 - 清除属性。 R 只读文件属性。 A 存档文件属性。 S 系统文件属性。 H 隐藏文件属性。 drive:pathfilename 指定要处理的文件属性。 /S 处理当前文件夹及其子文件夹中的匹配文件。 /
9、D 也处理文件夹。 * 设置或清除 DOS 系统的扩展 CTRL+C 检测 这个命令是为了与 DOS 系统的兼容而保留的,在 Windows XP 里不起作用。 如果命令扩展名被启用,并且操作平台是 Windows XP,BREAK 命令会在被调试程序调试时输入一个硬代码 中断点。 * 显示或者修改文件的访问控制表(ACL) CACLS filename /T /E /C /G user:perm /R user . /P user:perm . /D user . filename 显示 ACL。 /T 更改当前目录及其所有子目录中指定文件的 ACL。 /E 编辑 ACL 而不替换。 /C
10、在出现拒绝访问错误时继续。 /G user:perm 赋予指定用户访问权限。 Perm 可以是: R 读取 W 写入 C 更改(写入) F 完全控制 /R user 撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。 /P user:perm 替换指定用户的访问权限。 Perm 可以是: N 无 R 读取 W 写入 C 更改(写入) F 完全控制 /D user 拒绝指定用户的访问。 在命令中可以使用通配符指定多个文件。 也可以在命令中指定多个用户。 缩写: CI - 容器继承。 ACE 会由目录继承。 OI - 对象继承。 ACE 会由文件继承。 IO - 只继承。 ACE 不适用于当
11、前文件/目录。 * 从批处理程序调用另一个批处理程序。 CALL drive:pathfilename batch-parameters batch-parameters 指定批处理程序所需的命令行信息。 如果命令扩展名被启用,CALL 会如下改变: CALL 命令现在将卷标当作 CALL 的目标接受。语法是: CALL:label arguments 一个新的批文件上下文由指定的参数所创建,控制在卷标被指定后传递到语句。您必须通过达到批脚本文件末 两次来 exit 两次。第一次读到文件末时,控制会回到 CALL 语句的紧后面。第二次会退出批脚本。键入 G OTO /?,参看 GOTO : E
12、OF 扩展名的描述,此描述允许您从一个批脚本返回。 另外,批脚本文本参数参照(%0、%1、等等)已如下改变: 批脚本里的 %* 指出所有的参数(如 %1 %2 %3 %4 %5 .) 批参数(%n)的替代已被增强。您可以使用以下语法: %1 - 删除引号(),扩充 %1 %f1 - 将 %1 扩充到一个完全合格的路径名 %d1 - 仅将 %1 扩充到一个驱动器号 %p1 - 仅将 %1 扩充到一个路径 %n1 - 仅将 %1 扩充到一个文件名 %x1 - 仅将 %1 扩充到一个文件扩展名 %s1 - 扩充的路径指含有短名 %a1 - 将 %1 扩充到文件属性 %t1 - 将 %1 扩充到文件的
13、日期/时间 %z1 - 将 %1 扩充到文件的大小 %$PATH : 1 - 查找列在 PATH 环境变量的目录,并将 %1 扩充到找到的第一个完全合格的名称。如 果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串 可以组合修定符来取得多重结果: %dp1 - 只将 %1 扩展到驱动器号和路径 %nx1 - 只将 %1 扩展到文件名和扩展名 %dp$PATH:1 - 在列在 PATH 环境变量中的目录里查找 %1,并扩展到找到的第一个文件的驱动器号和 路径。 %ftza1 - 将 %1 扩展到类似 DIR 的输出行。 在上面的例子中,%1 和 PATH 可以被其他有效数值替换。
14、% 语法被一个有效参数号码终止。% 修定 符不能跟 %* 使用 * 显示当前目录名或改变当前目录。 CHDIR /D drive:path CHDIR . CD /D drive:path CD . . 指定要改成父目录。 键入 CD 驱动器: 显示指定驱动器中的当前目录。 不带参数只键入 CD,则显示当前驱动器和目录。 使用 /D 命令行开关,除了改变驱动器的当前目录之外,还可改变当前驱动器。 如果扩展命令名被启用,CHDIR 会如下改变: 当前的目录字符串会被转换成使用磁盘名上的大小写。所以,如果磁盘上的大小写如此,CD C : TEMP 会将 当前目录设为 C:Temp。 CHDIR 命
15、令不把空格当作分隔符,因此有可能将目录名改为一个带有空格但不带有引号的子目录名。例如: cd winntprofilesusernameprogramsstart menu 与下列相同: cd winntprofilesusernameprogramsstart menu 在扩展功能停用的情况下,您必须键入以上命令。 * 显示或设置活动代码页编号。 CHCP nnn nnn 指定代码页编号。 不加参数键入 CHCP 显示活动代码页编号。 * 显示当前目录名或改变当前目录。 CHDIR /D drive:path CHDIR . CD /D drive:path CD . . 指定要改成父目录。
16、 键入 CD 驱动器: 显示指定驱动器中的当前目录。 不带参数只键入 CD,则显示当前驱动器和目录。 使用 /D 命令行开关,除了改变驱动器的当前目录之外,还可改变当前驱动器。 如果扩展命令名被启用,CHDIR 会如下改变: 当前的目录字符串会被转换成使用磁盘名上的大小写。所以,如果磁盘上的大小写如此,CD C : TEMP 会将 当前目录设为 C:Temp。 CHDIR 命令不把空格当作分隔符,因此有可能将目录名改为一个带有空格但不带有引号的子目录名。例如: cd winntprofilesusernameprogramsstart menu 与下列相同: cd winntprofilesu
17、sernameprogramsstart menu 在扩展功能停用的情况下,您必须键入以上命令。 * 检查磁盘并显示状态报告。 CHKDSK volumepathfilename /F /V /R /X /I /C /L:size volume 指定驱动器(后面跟一个冒号)、装入点或卷名。 filename 仅用于 FAT/FAT32: 指定要检查是否有碎片的文件。 /F 修复磁盘上的错误。 /V 在 FAT/FAT32 上: 显示磁盘上每个文件的完整路径和名称。在 NTFS 上: 如果有清除消息,将其 显示。 /R 查找不正确的扇区并恢复可读信息(隐含 /F)。 /L:size 仅用于 NT
18、FS: 将日志文件大小改成指定的 KB 数。如果没有指定大小,则显示当前的大小。 /X 如果必要,强制卷先卸下。卷的所有打开的句柄就会无效(隐含 /F)。 /I 仅用于 NTFS: 对索引项进行强度较小的检查。 /C 仅用于 NTFS: 跳过文件夹结构的循环检查。 /I 和 /C 命令行开关跳过卷的某些检查,减少运行 Chkdsk 所需的时间。 * 在启动时显示或修改磁盘检查。 CHKNTFS volume . CHKNTFS /D CHKNTFS /T:timernCHKNTFS /X volume . CHKNTFS /C volume . volume: 指定驱动器(后面跟一个冒号)、装
19、入点或卷名。 /D 将计算机恢复成默认状态, 启动时检查所有驱动器,并对有问题的驱动器执行 chkdsk 命令。 /T:time 将 AUTOCHK 初始递减计数时间改成指定的时间量,单位为秒数。如果没有指定时间,则显示当 前设置。 /X 排除启动时不作检查的驱动器。上次执行此命令排除的驱动器此时无效。 /C 安排启动时检查驱动器,如果驱动器有问题,运行 chkdsk。 如果没有指定命令行开关,CHKNTFS 会显示每一驱动器有问题的位的状态。 * 清除屏幕。 CLS * 启动 Windows XP 命令解释程序一个新的实例 CMD /A | /U /Q /D /E:ON | /E:OFF /
20、F:ON | /F:OFF /V:ON | /V:OFF /S /C | /K string /C 执行字符串指定的命令然后终断 /K 执行字符串指定的命令但保留 /S 在 /C 或 /K 后修改字符串处理(见下) /Q 关闭回应 /D 从注册表中停用执行 AutoRun 命令(见下) /A 使向内部管道或文件命令的输出成为 ANSI /U 使向内部管道或文件命令的输出成为 Unicode /T:fg 设置前景/背景颜色(详细信息,请见 COLOR /?) /E:ON 启用命令扩展(见下) /E:OFF 停用命令扩展(见下) /F:ON 启用文件和目录名称完成字符 (见下) /F:OFF 停用
21、文件和目录名称完成字符(见下) /V:ON 将 ! 作为定界符启动延缓环境变量扩展。 如: /V:ON 会允许 !var! 在执行时允许 !var! 扩展变量 var。 var 语法在输入时扩展变量,这与在一个 FOR 循环内不同。 /V:OFF 停用延缓的环境扩展。 请注意,如果字符串有引号,可以接受用命令分隔符 !+, * 设置默认的控制台前景和背景颜色。 COLOR attr attr 指定控制台输出的颜色属性 颜色属性由两个十六进制数字指定 - 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一: 0 = 黑色 8 = 灰色 1 = 蓝色 9 = 淡蓝色 2 = 绿色 A =
22、淡绿色 3 = 湖蓝色 B = 淡浅绿色 4 = 红色 C = 淡红色 5 = 紫色 D = 淡紫色 6 = 黄色 E = 淡黄色 7 = 白色 F = 亮白色 如果没有给定任何参数,该命令会将颜色还原到 CMD.EXE 启动时的颜色。这个值来自当前控制台窗口、/T 开关或 DefaultColor 注册表值。 如果用相同的前景和背景颜色来执行 COLOR 命令,COLOR 命令会将 ERRORLEVEL 设置为 1。 例如: COLOR fc 在亮白色上产生亮红色比较两个文件或两个文件集的内容。 * 比较两个或两套文件的内容。 COMP data1 data2 /D /A /L /N=num
23、ber /C /OFFLINE data1 指定要比较的第一个文件的位置和名称。 data2 指定要比较的第二个文件的位置和名称。 /D 用十进制格式显示不同处。 /A 用 ASCII 字符显示不同处。 /L 显示不同的行数。 /N=number 只比较每个文件中第一个指定的行数。 /C 比较文件时不分 ASCII 字母的大小写。 /OFFLINE 不要跳过带有脱机属性集的文件。 要比较文件集,在 data1 和 data2 参数中使用通配符。 * 显示或改变 NTFS 分区上文件的压缩. COMPACT /C | /U /S:dir /A /I /F /Q filename . /C 压缩指
24、定的文件。会给目录作标记,这样以后添加的文件会得到压缩。 /U 解压缩指定的文件。会给目录作标记,这样以后添加的文件不会得到压缩。 /S 在指定的目录和所有子目录中的文件上执行指定操作。默认 dir是当前目录。 /A 显示具有隐藏或系统属性的文件。在默认情况下,这些文件都是被忽略的。 /I 即使在错误发生后,依然继续执行指定的操作。在默认情况下,COMPACT 在遇到错误时会停止。 /F 在所有指定文件上强制压缩操作,包括已被压缩的文件。在默认情况下,已经压缩的文件被忽略。 /Q 只报告最重要的信息。 filename 指定类型、文件和目录。 不跟参数一起使用时,COMPACT 显示当前目录及
25、其所含文件的压缩状态。您可以使用多个文件名和通配符。 在多个参数之间必须加空格。 * 将 FAT 卷转换成 NTFS。 CONVERT volume /FS:NTFS /V /CvtArea:filename /NoSecurity /X volume 指定驱动器号(后面跟一个冒号)、装载点或卷名。 /FS:NTFS 指定要被转换成 NTFS 的卷。 /V 指定 Convert 应该用详述模式运行。 /CvtArea:filename 将根目录中的一个接续文件指定为 NTFS 系统文件的占位符。 /NoSecurity 指定每个人都可以访问转换的文件和目录的安全设置。 /X 如果必要,先强行卸
26、载卷。该卷的所有打开的句柄则无效。 * 将一份或多份文件复制到另一个位置。 COPY /D /V /N /Y | /-Y /Z /A | /B source /A | /B + source /A | /B + . destination /A | /B source 指定要复制的文件。 /A 表示一个 ASCII 文本文件。 /B 表示一个二进位文件。 /D 允许解密要创建的目标文件 destination 为新文件指定目录和/或文件名。 /V 验证新文件写入是否正确。 /N 复制带有非 8dot3 名称的文件时,尽可能使用短文件名。 /Y 不使用确认是否要改写现有目标文件的提示。 /-Y
27、使用确认是否要改写现有目标文件的提示。 /Z 用可重新启动模式复制已联网的文件。 命令行开关 /Y 可以在 COPYCMD 环境变量中预先设定。 这可能会被命令行上的 /-Y 替代。除非 COPY 命令是在一个批文件脚本中执行的,默认值应为在改写时进行 提示。 要附加文件,请为目标指定一个文件,为源指定数个文件(用通配符或 file1+file2+file3 格式)。 * 显示或设置日期。 DATE /T | date 显示当前日期设置和输入新日期的提示,请键入不带参数的 DATE。要保留现有日期,请按 ENTER。 如果命令扩展名被启用,DATE 命令会支持 /T 开关;该开关指示命令只输出
28、当前日期,但不提示输出新日期。 * 删除一个或数个文件。 DEL /P /F /S /Q /A:attributes names ERASE /P /F /S /Q /A:attributes names names 指定一个或数个文件或目录列表。通配符可被用来删除多个文件。如果指定了一个目录,目录中 的所有文件都会被删除。 /P 删除每一个文件之前提示确认。 /F 强制删除只读文件。 /S 从所有子目录删除指定文件。 /Q 安静模式。删除全局通配符时,不要求确认。 /A 根据属性选择要删除的文件。 attributes R 只读文件 S 系统文件 H 隐藏文件 A 存档文件 - 表示“否”的
29、前缀 如果命令扩展名被启用,DEL 和 ERASE 会如下改变: /S 开关的显示句法会颠倒,即只显示已经删除的文件,而不显示找不到的文件。 * 显示目录中的文件和子目录列表。 DIR drive:pathfilename /A:attributes /B /C /D /L /N /O:sortorder /P /Q /S /T:timef ield /W /X /4 drive:pathfilename 指定要列出的驱动器、目录和/或文件。 /A 显示具有指定属性的文件。 attributes D 目录 R 只读文件 H 隐藏文件 A 准备存档的文件 S 系统文件 - 表示“否”的前缀 /B
30、 使用空格式(没有标题信息或摘要)。 /C 在文件大小中显示千位数分隔符。这是默认值。用 /-C 来停用分隔符显示。 /D 跟宽式相同,但文件是按栏分类列出的。 /L 用小写。 /N 新的长列表格式,其中文件名在最右边。 /O 用分类顺序列出文件。 sortorder N 按名称(字母顺序) S 按大小(从小到大) E 按扩展名(字母顺序) D 按日期/时间(从先到后) G 组目录优先 - 颠倒顺序的前缀 /P 在每个信息屏幕后暂停。 /Q 显示文件所有者。 /S 显示指定目录和所有子目录中的文件。 /T 控制显示或用来分类的时间字符域。 timefield C 创建时间 A 上次访问时间 W
31、 上次写入的时间 /W 用宽列表格式。 /X 显示为非 8dot3 文件名产生的短名称。格式是 /N 的格式,短名称插在长名称前面。如果没有短名称, 在其位置则显示空白。 /4 用四位数字显示年 可以在 DIRCMD 环境变量中预先设定开关。通过添加前缀 - (破折号)来替代预先设定的开关。例如,/-W。 * 比较两张软盘的内容。 DISKCOMP drive1: drive2: 把一张软盘的内容复制到另一张。 DISKCOPY drive1: drive2: /V /V 校验信息复制得是否正确。 两张软盘的类型必须相同。 您可以为 drive1 和 drive2 指定同样的驱动器。 编辑命令
32、行,重调用 Windows XP 命令,并创建宏。 DOSKEY /REINSTALL /LISTSIZE=size /MACROS:ALL | :exename /HISTORY /INSERT | /OVERSTRIKE /EXENAME=exename /MACROFILE=filename macroname=text /REINSTALL 安装一组新的 Doskey。 /LISTSIZE=size 设置命令历史记录的缓冲区大小。 /MACROS 显示所有 Doskey 宏。 /MACROS:ALL 为具有 Doskey 宏的执行文件,显示所有的 Doskey 宏。 /MACROS:e
33、xename 显示指定执行文件的所有 Doskey 宏。 /HISTORY 显示保存在内存中的所有命令。 /INSERT 指定用键入的新文字插入旧文字中。 /OVERSTRIKE 指定新文字改写旧文字。 /EXENAME=exename 指定执行文件。 /MACROFILE=filename 指定安装的宏文件。 macroname 指定所创建宏的名称。 text 指定要登记的命令。 使用上下箭头键选择命令;ESC 清除命令行;F7 显示命令历史记录;ALT+F7 清除命令历史记录;F8 搜索 命令历史记录;F9 按编号选择命令;ALT+F10 清除宏定义。 以下是 Doskey 宏定义的特殊码
34、: $T 命令分隔符号。允许一个宏可以含多个命令。 $1-$9 批处理参数。与批处理程序中的 %1-%9 相同。 $* 以命令行中命令名称后面的任何内容替换的符号。 * 显示信息,或将命令回显打开或关上。 ECHO ON | OFF ECHO message 要显示当前回显设置,键入不带参数的 ECHO。 结束批处理文件中环境改动的本地化操作。在执行 ENDLOCAL 之后所做的环境改动不再仅限于批处理文件。 批处理文件结束后,原先的设置无法还原。 ENDLOCAL 如果命令扩展名被启用,ENDLOCAL 会如下改变: 如果相应的 SETLOCAL 用新的 ENABLEEXTENSIONS 或
35、 DISABLEEXTENSIONS 选项启用或停用了命令 扩展名,那么,在 ENDLOCAL 之后,命令扩展名的启用/停用状态会还原到执行相应的 SETLOCAL 命令前 的状态。 * 删除一个或数个文件。 DEL /P /F /S /Q /A:attributes names ERASE /P /F /S /Q /A:attributes names names 指定一个或数个文件或目录列表。通配符可被用来删除多个文件。如果指定了一个目录,目录中 的所有文件都会被删除。 /P 删除每一个文件之前提示确认。 /F 强制删除只读文件。 /S 从所有子目录删除指定文件。 /Q 安静模式。删除全局
36、通配符时,不要求确认。 /A 根据属性选择要删除的文件。 attributes R 只读文件 S 系统文件 H 隐藏文件 A 存档文件 - 表示“否”的前缀 如果命令扩展名被启用,DEL 和 ERASE 会如下改变: /S 开关的显示句法会颠倒,即只显示已经删除的文件,而不显示找不到的文件。 * 退出 CMD.EXE 程序(命令翻译程序)或当前批处理脚本。 EXIT /B exitCode /B 指定要退出当前批处理脚本而不是 CMD.EXE。如果从一个批处理脚本外执行,则会退出 CMD.EXE exitCode 指定一个数字号码。如果指定了 /B,将 ERRORLEVEL 设成那个数字。如果
37、退出 CMD.EXE,则 用那个数字设置过程退出代码。 * 比较两个文件或两个文件集并显示它们之间的不同 FC /A /C /L /LBn /N /OFFLINE /T /U /W /nnnn drive1:path1filename1 drive2:path2fil ename2 FC /B drive1:path1filename1 drive2:path2filename2 /A 只显示每个不同处的第一行和最后一行。 /B 执行二进制比较。 /C 不分大小写。 /L 将文件作为 ASCII 文字比较。 /LBn 将连续不匹配的最大值设为指定的行数。 /N 在 ASCII 比较上显示行数。
38、 /OFFLINE 不要跳过带有脱机属性集的文件。 /T 不要将 tab 扩充到空格。 /U 将文件作为 UNICODE 文字文件比较。 /W 为了比较而压缩空白(tab 和空格)。 /nnnn 指定不匹配处后必须连续匹配的行数。 drive1:path1filename1 指定要比较的第一个文件或第一个文件集。 drive2:path2filename2 指定要比较的第二个文件或第二个文件集。 * 在文件中搜索字符串。 FIND /V /C /N /I /OFFLINE string drive:pathfilename . /V 显示所有未包含指定字符串的行。 /C 仅显示包含字符串的行数
39、。 /N 显示行号。 /I 搜索字符串时忽略大小写。 /OFFLINE 不要跳过具有脱机属性集的文件。 string 指定要搜索的文字串, drive:pathfilename 指定要搜索的文件。 如果没有指定路径,FIND 将搜索键入的或者由另一命令产生的文字。 * 在文件中寻找字符串。 FINDSTR /B /E /L /R /S /I /X /V /N /M /O /F:file /C:string /G:file /D:dir list /A:color attributes /OFFLINE strings drive:pathfilename . /B 在一行的开始配对模式。 /E
40、 在一行的结尾配对模式。 /L 按字使用搜索字符串。 /R 将搜索字符串作为一般表达式使用。 /S 在当前目录和所有子目录中搜索匹配文件。 /I 指定搜索不分大小写。 /X 打印完全匹配的行。 /V 只打印不包含匹配的行。 /N 在匹配的每行前打印行数。 /M 如果文件含有匹配项,只打印其文件名。 /O 在每个匹配行前打印字符偏移量。 /P 忽略有不可打印字符的文件。 /OFFLINE 不跳过带有脱机属性集的文件。 /A:attr 指定有十六进位数字的颜色属性。请见 color /? /F:file 从指定文件读文件列表 (/ 代表控制台)。 /C:string 使用指定字符串作为文字搜索字符
41、串。 /G:file 从指定的文件获得搜索字符串。 (/ 代表控制台)。 /D:dir 查找以分号为分隔符的目录列表 strings 要查找的文字。 drive:pathfilename 指定要查找的文件。 除非参数有 /C 前缀,请使用空格隔开搜索字符串。 例如: FINDSTR hello there x.y 在文件 x.y 中寻找 hello 或 there 。 FINDSTR /C:hello there x.y 文件 x.y 寻找 hello there。 一般表达式的快速参考: . 通配符: 任何字符 * 重复: 以前字符或类别出现零或零以上次数 行位置: 行的开始 $ 行位置:
42、行的终点 class 字符类别: 任何在字符集中的字符 class 补字符类别: 任何不在字符集中的字符 x-y 范围: 在指定范围内的任何字符 x Escape: 元字符 x 的文字用法 字位置: 字的结束 有关 FINDSTR 常见表达法的详细情况,请见联机命令参考。 * 对一组文件中的每一个文件执行某个特定命令。 FOR %variable IN (set) DO command command-parameters %variable 指定一个单一字母可替换的参数。 (set) 指定一个或一组文件。可以使用通配符。 command 指定对每个文件执行的命令。 command-param
43、eters 为特定命令指定参数或命令行开关。 在批处理文件中使用 FOR 命令时,指定变量请使用 %variable 而不要用 %variable。变量名称是区分大小 写的,所以 %i 不同于 %I. 如果命令扩展名被启用,下列额外的 FOR 命令格式会受到支持: FOR /D %variable IN (set) DO command command-parameters 如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。 FOR /R drive:path %variable IN (set) DO command command-parameters 检查以 drive:path
44、 为根的目录树,指向每个目录中的 FOR 语句。如果在 /R 后没有指定目录,则使用当 前目录。如果集仅为一个单点(.)字符,则枚举该目录树。 FOR /L %variable IN (start,step,end) DO command command-parameters 该集表示以增量形式从开始到结束的一个数字序列。因此,(1,1,5) 将产生序列 1 2 3 4 5,(5,-1,1) 将产生 序列 (5 4 3 2 1)。 FOR /F options %variable IN (file-set) DO command command-parameters FOR /F option
45、s %variable IN (string) DO command command-parameters FOR /F options %variable IN (command) DO command command-parameters 或者,如果有 usebackq 选项: FOR /F options %variable IN (file-set) DO command command-parameters FOR /F options %variable IN (string) DO command command-parameters FOR /F options %variab
46、le IN (command) DO command command-parameters filenameset 为一个或多个文件名。继续到 filenameset 中的 下一个文件之前,每份文件都已被打开、读取并经过处理。处理包括读取文件,将其分成一行行的文字,然 后将每行解析成零或更多的符号。然后用已找到的符号字符串变量值调用 For 循环。以默认方式,/F 通过每 个文件的每一行中分开的第一个空白符号。跳过空白行。您可通过指定可选 options 参数替代默认解析操作。 这个带引号的字符串包括一个或多个指定不同解析选项的关键字。这些关键字为: eol=c - 指一个行注释字符的结尾(就
47、一个) skip=n - 指在文件开始时忽略的行数。 delims=xxx - 指分隔符集。这个替换了空格和跳格键的默认分隔符集。 tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代的 for 本身。这会导致额外变量名称的分配。m- n 格式为一个范围。通过 nth 符号指定 mth。如果符号字符串中的最后一个字符星号,那么额外的变量将在最 后一个符号解析之后分配并接受行的保留文本。 usebackq - 指定新语法已在下类情况中使用: 在作为命令执行一个后引号的字符串并且一个单引号字 符为文字字符串命令并允许在 filenameset 中使用双引号扩起文件名称。 某些范例可
48、能有助: FOR /F eol=; tokens=2,3* delims=, %i in (myfile.txt) do echo %i %j %k 会分析 myfile.txt 中的每一行,忽略以分号打头的那些行,将每行中的第二个和第三个符号传递给 for 程序 体;用逗号和/或空格定界符号。请注意,这个 for 程序体的语句引用 %i 来取得第二个符号,引用 %j 来取得 第三个符号,引用 %k 来取得第三个符号后的所有剩余符号。对于带有空格的文件名,您需要用双引号将文件 名括起来。为了用这种方式来使用双引号,您还需要使用 usebackq 选项,否则,双引号会 被理解成是用作 定义某个要
49、分析的字符串的。 %i 专门在 for 语句中得到说明,%j 和 %k 是通过 tokens= 选项专门得到说明的。您可以通过 tokens= 一行指定最多 26 个符号,只要不试图说明一个高于字母 z 或 Z 的变量。请记住,FOR 变量是单一字母、 分大小写和全局的;而且,同时不能有 52 个以上都在使用中。 您还可以在相邻字符串上使用 FOR /F 分析逻辑;方法是,用单引号将括号之间的 filenameset 括起来。这 样,该字符串会被当作一个文件中的一个单一输入行。 最后, 您可以用 FOR /F 命令来分析命令的输出。 方法是, 将括号之间的 filenameset 变成一个反括
50、字符串。 该字符串会被当作命令行,传递到一个子 CMD.EXE,其输出会被抓进内存,并被当作文件分析。因此,以下 例子: FOR /F usebackq delims= %i IN (set) DO echo %i 会枚举当前环境中的环境变量名称。 另外,FOR 变量参照的替换已被增强。您现在可以使用下列选项语法: I - 删除任何引号(),扩充 %I %fI - 将 %I 扩充到一个完全合格的路径名 %dI - 仅将 %I 扩充到一个驱动器号 %pI - 仅将 %I 扩充到一个路径 %nI - 仅将 %I 扩充到一个文件名 %xI - 仅将 %I 扩充到一个文件扩展名 %sI - 扩充的路径