引用 | 编辑
aska1218
2005-02-14 15:39 |
楼主
▼ |
||
x1
DOS可以说"食之无味,弃之可惜"就算到了使用XP这年代 它仍然有其功用 多学学总是有好处的 我将它做了整理 供大家参考 有什么问题可以大家讨论 ============================================================================== 如果临时要用 却又找不到时 你只要记得 command 后面加上/? 就会出现说明了 ============================================================================== assoc 显示或修改副档名的关联 ASSOC [.ext[=]] .ext 指定副档名,使档案类型与 fileType 产生关联 指定档案类型,以便和副档名产生关联。 键入 ASSOC 并且不加任何的参数,以显示目前的档案关联性。如果 ASSOC 只呼叫一个副档名,它将会显示该副档名目前的档案关联性。 如果不指定档案类型,命令便会将副档名的关联性删除。 ============================================================================== at AT 命令排定某些命令或程式在某个特定的日期和时间,在电脑上执行。 执行 AT 命令之前必须先启动 Schedule 服务。 AT [\\computername] [ | /DELETE ] AT [\\computername] time [ /EVERY:date[,...] | /NEXT:date[,...]] "command" \\computername 指定远端电脑。 如果省略这个参数,命令会被排定在本机上执行。 id 指定给排定时程命令的识别码。 /delete 删除某个已排程的命令。如果省略 id,所有电脑上已排程的 命令都会被删除。 /yes 用于删除所有已排程的工作,且不想在执行删除时显示确认讯息 使用。 time 指定命令执行的时间。 /interactive 允许工作在执行时,与当时登入的用户互动。 /every:date[,...] 指定在每周或每月的某日 (或某几日) 执行命令。 如果省略日期,则预设为在每月的本日执行。 /next:date[,...] 指定在下一次的指定日期 (如,下周三) 时,执行命令。 如果省略日期,则预设为在每月的本日执行。 "command" 准备执行的 Windows NT 命令或批次档。 ============================================================================== attrib 显示或变更档案属性。 ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [ ] + 设定属性。 - 清除属性。 R 唯读档案属性。 A 保存档案属性。 S 系统档案属性。 H 隐藏档案属性。 指定一个或一个以上的档案给 attrib 处理。 /S 处理目前的资料夹及所有子资料夹中相 符的档案。 /D 一并处理资料夹。 ============================================================================== break 设定或清除 DOS 系统的延伸 CTRL+C 检查 这是为了与 DOS 系统的相容性而保留,在 Windows XP 里没有作用。 如果您启用扩充命令,并在 Windows XP 平台执行时,那么 BREAK 命令会在以侦错程式侦错时 输入一个硬式编码中断点。 ============================================================================== call 从批次程式中呼叫另一程式。 CALL filename batch-parameters 指定批次程式所需要的命令列资讯。 如果您启用扩充命令,CALL 命令的变更如下: CALL 命令现在可以用标签来当作 CALL 命令的目标。语法为: CALL :label arguments 这会用指定的 arguments 来建立一个新的批次档档案内容,而且控制权 会被传到指定的 label 后的叙述。您必须 "exit" 两次,因为批次档 的结尾会被执行两次。第一次您读入批次档结尾时,控制权会回到 CALL 描述的下一个叙述。而第二次则会结束批次档的执行。请键入 GOTO /? 来获得 GOTO :EOF 扩充命令的描述。 这个命令可以让您从批次档中 "return" 。 此外,批次档参数的参考 (%0, %1, 及其他) 已经做了如下的扩充: %* 在批次档中,这代表所有的参数 (e.g. %1 %2 %3 %4 %5 ...) 批次参数的取代 (%n) 已经做了改进。 您现在可以 选用下列的语法: %~1 - 展开 %1 且移除包围的引号 (") %~f1 - 展开 %1 为一个完全符合的路径名称 %~d1 - 只展开 %1 为磁碟机代号 %~p1 - 只展开 %1 为路径 %~n1 - 只展开 %1 为档名 %~x1 - 只展开 %1 为副档名 %~s1 - 展开的路径只包含短档名 %~a1 - 展开 %1 为档案的档案属性 %~t1 - 展开 %1 为档案的日期/时间 %~z1 - 展开 %1 为档案的长度 %~$PATH:1 - 搜寻所有列在 PATH 环境变数内的目录 且展开 %1 为 第一个找到的完全符合档名。 如果没有定义环境变数名称 或是搜寻找不到档案, 则这个修饰元会展开成 空字串。 修正程式可合并使用,进而得到复合结果: %~dp1 - 只扩充 %1 到磁碟机代号和路径 %~nx1 - 只扩充 %1 到档案名称和副档名 %~dp$PATH:1 - 搜寻 %1 的 PATH 环境 变数中所列的目录,并扩充至 磁碟机代号和第一个找到的路径。 %~ftza1 - 将 %1 扩充成 DIR ,和输出行相同 在上例中,%1 和 PATH 可被其他有效值取代。%~ 语法是 以正确的引数数字作结尾。%~ 修正程式可能无法使用 %* ============================================================================== cacls 显示或修改档案的存取控制清单 (ACLs) CACLS filename ] ] ] filename 显示 ACL。 /T 变更指定档案的 ACL 于 现有的目录或所有子目录中。 /E 编辑 ACL 而非将它取代。 /C 拒绝存取的错误继续发生。 /G user:perm 授与指定的使用者存取权限。 Perm 的值可以是: R 读取 C 变更 (写入) F 完全控制 /R user 撤销已指定的使用者存取权限 (只有当 /E 存在时才有效)。 /P user:perm 取代已指定的使用者存取权限。 Perm 的值可以是: N 没有权限 R 读取 C 变更 (写入) F 完全控制 /D user 拒绝已指定的使用者存取。 您可以在命令中使用万用字元一次指定数个档案。 您可以在命令中指定数个使用者。 缩写: CI - 容器继承。 ACE 将被目录继承。 OI - 物件继承。 ACE 将被档案继承。 IO - 仅供继承。 ACE 不可套用到目前的档案/目录。 ============================================================================== cd/chdir 显示目前工作目录的名称或是变更目录。 CHDIR CHDIR [..] CD CD [..] .. 指定变更到上层目录。 键入 CD drive: 即可显示指定磁碟机的目前工作目录。 仅键入 CD 而不加参数,即可显示目前的磁碟机和目录。 使用 /D 参数可以同时变更工作磁碟机及其工作目录。 如果您启用扩充命令,CHDIR 的变更如下: 目前的目录字串会被转换成与磁碟上名称相同大小写的字串。 所以如果磁碟上的目录是 C:\Temp 的话,CD C:\TEMP 命令实 际上会转换为 CD C:\Temp。 CHDIR 命令不会将空格当成分隔字元,所以如果您要切换到含 有空格字元的目录时,就算您不使用引号来括住目录名称,也 一样可以用 CD 命令切换到该目录。例如: cd \winnt\profiles\username\programs\start menu 就相等于: cd "\winnt\profiles\username\programs\start menu" 如果您停用扩充命令,就必须输入前一种命令。 ============================================================================== chcp 显示或设定使用中字码页编号。 CHCP nnn 指定字码页编号。 不加参数键入 CHCP 显示使用中字码页编号。 ============================================================================== chkdsk 检查磁碟并显示状态报告。 CHKDSK filename]]] ] volume 指定磁碟机代号 (后接冒号), 挂接点或磁碟区名称。 filename 只能用在 FAT/FAT32: 指定要进行分散程度检查的档案。 /F 修复磁片上的错误。 /V FAT/FAT32 模式: 显示磁碟上每个档案的完整路径 及名称。 NTFS 模式: 如果有清除的讯息,也一并显示。 /R 找出损坏的磁区并复原可读取的资讯。 (包含 /F)。 /L:size 只适用于 NTFS 模式: 将记录档大小变更为指定的 KB 数值。如果没有指定记录档大小,就显示目前的大小。 /X 如果必须的话,强制先解下磁碟区。所有在 磁碟区上开启的控制代码都会失效 (包含 /F)。 /I 只适用于 NTFS 模式: 不检查索引项目。 /C 只适用于 NTFS 模式: 跳过资料夹结构的循环检查。 使用 /I 或 /C 参数跳过某些磁碟区检查,可以在执行 Chkdsk 时减少检查时间。 ============================================================================== cls 清除萤幕 CLS ============================================================================== cmd 启动 Windows XP 命令直译器新例项 CMD [ string] /C 执行字串中所描述的命令然后结束命令视窗 /K 执行 字串中所描述的命令然后保留命令视窗 /S 修改字串在 /C 或 /K (参看下方) /Q 关闭 echo /D 从登录中停用 AutoRun 命令(参看下方) /A 将内部命令输出结果以 ANSI 格式导向 pipe 或档案 /U 将内部命令输出结果以 Unicode 格式导向 pipe 或档案 /T:fg 设定幕前/幕后色彩 (参看 COLOR /?) /E:ON 启用命令延伸 (参看下方) /E:OFF 停用命令延伸 (参看下方) /F:ON 启用档案及目录名称完整字元(参看下方) /F:OFF 停用档案及目录名称完整字元(参看下方) /V:ON 启用延迟环境变数延伸,用 c 作为分隔字元。例如, /V:ON 可以让 !var! 在执行时展开变数 var。文法 var 则会在输入时展开变数,这在 FOR 回圈之中是 完全不同的事。 /V:OFF 停用延迟环境变数展开 请注意用命令分隔字元 '&&' 隔开的多个命令如果被引号包含时则会被 当成字串来接受。此外,为了相容性的原因,/X 的作用与 /E:ON 相同; /Y 与 /E:OFF 相同且 /R 与 /C 相同。其余的参数则会被忽略。 如果指定了/C 或 /K,则在参数后的其余命令列会被当成命令列来处理, 其中使用下面的逻辑来处理引号字元 (") : 1. 如果所有下列条件都符合,那么命令列上的引号会被保留: - 没有 /S 参数 - 正好有两个引号 - 在两个引号之间没有下列特殊字元: &<>()@^| - 两个引号之间有一些空格 - 在两个引号之间的字串是执行档的档案名称。 2. 否则,旧的行为是如果第一个字元是引号,会把前置字元 去掉,并将命令列中第一个引号及最后一个引号之间的所有 文字便成保留文字。 如果您在命令列中未指定 /D,当 CMD.EXE 起动后, 它会寻找下列 REG_SZ/REG_EXPAND_SZ的 登录变数。如果 有一个存在或两个都存在,命令会执行第一个变数。 HKEY_LOCAL_MACHINE\Software\Microsoft\CommandProcessor\AutoRun 及/或 HKEY_CURRENT_USER\Software\Microsoft\CommandProcessor\AutoRun 将命令扩充功能预设成启用状态。您可以在特定的 呼叫中,用 /E:OFF 参数来停用扩充功能。 您可以启用或停用一台电脑上或使用者登入工作阶段中所有 CMD.EXE 呼叫的扩充功能,如果您要这样作, 请使用 REGEDT32.EXE 来设定以下的 REG_DWORD 值: HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions 及/或 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions 到 0x1 或 0x0。使用者指定设定的执行优先顺序高于电脑上 的设定。命令列参数的执行优先顺序高于登录中的设定值。 扩充命令包括下列命令的变更及(或) 新增: DEL or ERASE COLOR CD or CHDIR MD or MKDIR PROMPT PUSHD POPD SET SETLOCAL ENDLOCAL IF FOR CALL SHIFT GOTO START (也包括援用外部命令之变更) ASSOC FTYPE 请键入 HELP 命令名称,以查阅说明。 预设状态下,不会启用延迟环境变数扩充。您可以 使用 /V:ON 或 /V:OFF 参数在执行 CMD.EXE 时启用 或停用完整档案名称。您也可以用 REGEDT32.EXE 来 修改以下 REG_DWORD 值,来启用或停用整个电脑上或 使用者登入工作阶段中所有 CMD.EXE 的档案名称完整功能: HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion 及/或 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion 其值可为 0x1 或 0x0。使用者指定设定的优先顺序高于 电脑设定。命令列参数优先顺序高于登录设定值。 如果已启用延迟环境变数扩充,惊叹号字元会在执行时 被用来取代环境变数值。 预设无法启用档案和目录名称完成。 您可以为特定的 CMD.EXE 呼叫,以 /F:ON 或 /F:OFF 开关启用或停用档案名称完成。 您可以启用或停用在同 一部电脑上所有 CMD.EXE 的呼叫完成及/或使用者登入工作阶段。方法是使 用 REGEDT32.EXE 设定其一或两者登录中的 REG_DWORD 值: HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar 及/或 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar 用于特定功能的控制字元十六进位值 (例如 0x4 是 Ctrl-D ; 0x6 是 Ctrl-F)。使用者指定设定的执行优先顺序高于电脑上的设定。命令列参数 的执行优先顺序高于登录中的设定值。 如果以 /F:ON 开关启用完成,则用于目录名称完成的控制字元是 Ctrl-D 而用于档案名称完成的控制字元是 Ctrl-F。如果您要停用在登录中的特定 完成字元,请使用空间值 (0x20),因为它不是正确的控制字元。 当您键入其中一个控制字元后,完成功能会被启动。如果路径字串已存在, 而且所建立的路径清单也符合的话,完成函数会读取到指标所在左方为止 的路径字串。然后它会显示第一个符合的路径。如果找不到符合的路径, 它会发出哔声并保留显示。如果您重覆按相同的控制字元,它将在符合的路 径清单中循环执行。如果您同时按下 Shift 键与控制字元,可在清单中反 向移动。如果您进行编辑后再按控制字元的话,已储存的符合路径清单会被 丢弃,并建立新的清单。如果您在档案及目录完成功能之间切换,会有同样 的情况发生。这两个控制字元不同之处是:档案完成字元可同时对应档案及 目录名称,而目录完成字元只能对应目录名称。如果您将档案完成功能用在 内建目录命令上 (CD,MD 或 RD) 也等于使用了目录完成功能。 如果您在路径字串两端加上引号,完成功能键就可正确处理包含空格或其他 特殊字元的档案名称。还有,如果您备份后,又在命令列中呼叫完成功能的 话,已呼叫过完成功能的指标右方的文字会被丢弃。 要求加上引号的特殊字元有: <space> &()[]{}^=;!'+,`~ ============================================================================== color 设定预设主控台的前景及背景色彩。 COLOR attr 指定主控台输出的色彩属性。 色彩属性由 TWO 十六进位数字所指定 -- 第一个对应于背景,第二个对应于 前景。每一数位可为以下其中一个值: 0 = 黑色 8 = 灰色 1 = 蓝色 9 = 淡蓝色 2 = 绿色 A = 淡绿色 3 = 蓝绿色 B = 淡蓝绿色 4 = 红色 C = 淡红色 5 = 紫色 D = 淡紫色 6 = 黄色 E = 淡黄色 7 = 白色 F = 亮白色 如果没有指定引数,这个命令会还原成 CMD.EXE 启动时的色彩。这个值可能 来自目前主控台视窗、/T 命令列参数或来自 DefaultColor 登录值。 COLOR 命令设定 ERRORLEVEL 为 1,如果您尝试执行 COLOR 命令,并指定相同的前景和背景色彩的话。 范例: "COLOR fc" 产生淡红色于亮白色上 ============================================================================== comp 比较两个档案或两组档案的内容。 COMP ] data1 指定第一个或第一组要比较的档案的位置与档名。 data2 指定第二个或第二组要比较的档案的位置与档名。 /D 以十进位格式来显示不同之处。 /A 以 ASCII 字元来显示不同之处。 /L 显示不同之处的行号。 /N=number 只比较每个档案中第一个指定的行号。 /C 比较档案时忽略 ASCII 字母的大小写。 /OFF 不要略过有离线属性设定的档案。 要比较一组档案,请在 data1 和 data2 参数中使用万用字元。 ============================================================================== compact 显示或改变 NTFS 磁碟分割上的档案压缩。 COMPACT ] ] /C 压缩指定的档案。将标示目录使以后新增的档案将被压缩。 /U 解压缩指定的档案。将标示目录使以后新增的档案将不被解压缩。 /S 对所给目录及其所有子目录下的档案执行指定的作业,预设 "dir" 为目前的目录。 /A 显示有隐藏或系统属性的档案,这些档案在预设中是被省略的。 /I 即使发生错误,仍继续执行指定的操作。依预设,遇到错误时, COMPACT 将停止。 /F 强迫压缩所有指定的档案,即使是已压缩过的档案。依预设,将 略过已压缩的档案。 /Q 只报告最基本的资讯。 filename 指定一格式、档案、或目录。 不带参数,COMPACT 显示目前目录及其含有所有档案的压缩状态。您可以使用 多个档名或通配字元。在多个参数彼此间必须有空格。 ============================================================================== convert 将 FAT 磁碟区转换为 NTFS。 CONVERT volume /FS:NTFS volume 指定磁碟机代号 (后接冒号), 挂接点或磁碟区名称。 /FS:NTFS 指定将磁碟区转换成 NTFS。 /V 指定在详细讯息模式下执行转换。 /CvtArea:filename 在根目录中指定一个相连的档案作为 NTFS 系统档案的置放点。 /NoSecurity 指定已转换的档案和目录的安全性 设定值能让每个人存取。 /X 必要的话,强迫磁碟区先卸下。 所有已开启的磁碟区控制码将失效。 ============================================================================== copy 将一些档案复制到另一个位置。 COPY source [+ source [+ ...]] ] source 指定要复制的档案。 /A 指定一个 ASCII 文字档案。 /B 指定一个二位元档案。 destination 为新档案指定目录及(或) 档案名称。 /V 确认新档案是否正确写入。 /N 使用短档名来复制非 8.3 名称的档案 (如果可用的话)。 /Y 不显示覆写现存 目的档案的确认提示。 /-Y 显示覆写现存目的 档案的确认提示。 /Z 在可重新启动模式中复制网路档案。 参数 /Y 可以预先设定在 COPYCMD 环境变数中。 这可能会覆写命令列中的 /-Y。预设值是 显示覆写确认提示,除非 COPY 命令是从 批次指令档中执行。 如果要附加档案,指定一个目的档案,及数个 来源档案 (使用万用字元或 file1+file2+file3 格式)。 ============================================================================== date 显示或设定日期。 DATE 只键入 DATE 而不加上参数,可以显示目前设定的日期,并且提示您输入新的日 期。按 ENTER 键即可保持原来日期。 如果您启用扩充命令,DATE 命令会支援 /T 参数,这个参数 会让命令只输出目前的日期,而不提示您输入新日期。 ============================================================================== del/erase 删除一个或更多档案。 DEL attributes]] names ERASE attributes]] names names 指定一个或更多档案或目录清单。 可以使用万用字元来删除多个档案。 如果 指定目录,这个目录内的所有档案 将被删除。 /P 删除每个档案前,先提示确认。 /F 强制删除唯读档案。 /S 由所有子目录删除指定的档案。 /Q 安静模式,不要问是否确定删除全域万用字元 /A 根据属性选取要删除的档案 attributes R 唯读档案 S 系统档案 H 隐藏档案 A 准备保存的档案 - 首码表示不是 如果您启用扩充命令,DEL 和 ERASE 命令的变更如下: /S 参数的显示方式完全相反,它只会显示已删除的档案,不会显示它找不到的 档案。 ============================================================================== dir 显示档案清单以列出目录中的档案及子目录。 DIR attributes]] sortorder]] timefield]] 指定要显示的磁碟机、目录或档案。 /A 依照指定的档案属性来显示档案。 attributes D 目录 R 唯读档 H 隐藏档 A 保存档 S 系统档案 - 无意义 /B 使用单纯格式 (没有标头资讯或摘要)。 /C 显示档案大小千位数分隔符号。这是 预设值。 使用 /-C 来停用分隔符号的显示。 /D 与宽的列表格式相同,但是依照栏来排序。 /L 使用小写显示。 /N 使用新的长列表格式,档名会显示在最右方。 /O 依照指定的排序顺序来列出档案。 sortorder N 依名称 (英文字母) S 依大小 (最小的在前) E 依副档名 (英文字母) D 依照日期与时间 (日期较早的在前) G 先列出子目录 - 表示相反的顺序 /P 当资料填满整个萤幕时暂停显示。 /Q 显示档案拥有者。 /S 显示指定目录及所有子目录中的档案。 /T 指定用来显示或排序的时间栏位 timefield C 建立 A 上次档案存取时间 W 上次写入档案时间 /W 使用宽的列表格式。 /X 显示对非 8.3 格式的档案产生的短档名。 这个格式和 /N 相同,但是短档名会插入在 长档名之前。 如果没有长档名存在,该处会 显示空白。 /4 显示四位数的年份 参数可能会在 DIRCMD 环境变数预先设定。您可以在任何参数使用连字号字首(-) 来覆盖预先的设定--例如: /-W。 ================================================================================= diskcomp 比较两片磁片的内容。 DISKCOMP [磁碟机1: [磁碟机2:]] === .. 访客只能看到部份内容,免费 加入会员 x0
|
引用 | 编辑
ray1007jp-86
2009-08-05 06:54 |
3楼
▲ ▼ |
哇!真是感谢大大的用心~
虽然不怎么懂,但一定想办法大约了解一下!! x0 |
引用 | 编辑
snk1221
2012-10-09 11:57 |
4楼
▲ |
对岸有人写成批次档
~把下面复制到批次档里执行~ 就会产生一个叫做 命令行帮助信息.HTA 直接打开就有所有指令说明.. ------------------------------------------------------------------------------- @echo off title 命令提示符-命令行帮助信息生成器 - code zh159@bbs.cn-dos.net 2008-4-26 set Name=命令行帮助信息 echo. echo 请稍等... >%Name%.hta echo ^<html lang="zh-tw"^> >>%Name%.hta echo ^<meta http-equiv="Content-Type" content="text/html; charset=Big-5"^> >>%Name%.hta echo ^<title^>命令提示符-命令行帮助信息 - code zh159@bbs.cn-dos.net 2008-4-26^</title^> >>%Name%.hta echo ^<HTA:APPLICATION >>%Name%.hta echo APPLICATIONNAME="命令提示符-命令行帮助信息" >>%Name%.hta echo SCROLL="no" >>%Name%.hta echo INNERBORDER="no" >>%Name%.hta echo /^> >>%Name%.hta echo ^<script language="VBScript"^> >>%Name%.hta echo window.resizeTo 900, 660 >>%Name%.hta echo ileft=(window.screen.width-900)/2 >>%Name%.hta echo itop=(window.screen.height-660)/2-15 >>%Name%.hta echo window.moveTo ileft,itop >>%Name%.hta echo ^</script^> >>%Name%.hta echo ^<style^> >>%Name%.hta echo a:link {color: #000000; font:18px Tahoma; text-decoration:none;} >>%Name%.hta echo a:visited {color: #000000; font:18px Tahoma; text-decoration:none;} >>%Name%.hta echo a:hover {color: #ffffff; background-color:0000ff;} >>%Name%.hta echo a:active {color: #ff0000; background-color:ffffff;} >>%Name%.hta echo em {font:18px Tahoma; color:0000ff;}^</style^> >>%Name%.hta echo ^</style^> >>%Name%.hta echo ^<body style="FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#10bfff,endColorStr=#007db2);color:#ffffff;"^> >>%Name%.hta echo ^<table width="100%%" height="100%%" align="center" border="0" cellspacing="0" cellpadding="1" style="border: solid 1 #ffffff;"^> >>%Name%.hta echo ^<tr^> >>%Name%.hta echo ^<td width="120" height="100%%"^> >>%Name%.hta echo ^<span style="width:100%%;height:100%%; overflow-y: auto;"^> >>%Name%.hta echo ^<table align="left"^>^<tr^>^<td^> >>%Name%.hta echo 命令列表^<br^> echo. for /f %%i in ('help^|findstr /i "^[a-z]"') do ( set/a n+=1 call set/p= 共 %%n%% 个命令,正在处理...<nul set /p= <nul >>%Name%.hta echo. ^<a href="#%%i"^>%%i^</a^>^<br^> ) >>%Name%.hta echo ^<td^>^<tr^>^</table^> >>%Name%.hta echo ^</span^> >>%Name%.hta echo ^</td^> >>%Name%.hta echo ^<td^> >>%Name%.hta echo ^<span style="width:100%%;height:100%%; overflow-y: auto;"^> >>%Name%.hta echo ^<table align="left" style="font:15px Fixedsys;"^>^<tr^>^<td^> echo.&echo. echo 序号 - 命令名称 for /f %%i in ('help^|findstr /i "^[a-z]"') do ( set/a m+=1 call echo %%m%%. - %%i >>%Name%.hta echo ^</p^>^<a name="#%%i"^>^</a^>^<em^>^<u^>%%i^</u^>^</em^>^<br^> for /f "delims=" %%f in ('%%i/?') do ( set "str=%%f" setlocal EnableDelayedExpansion set str=!str: = ! set str=!str:^<=^<! set str=!str:^>=^>! >>%Name%.hta echo. !str!^<br^> endlocal ) ) >>%Name%.hta echo ^<td^>^<tr^>^</table^> >>%Name%.hta echo ^</span^> >>%Name%.hta echo ^</td^> >>%Name%.hta echo ^</tr^> >>%Name%.hta echo ^</table^> >>%Name%.hta echo ^</body^> >>%Name%.hta echo ^</html^> echo. echo 完成!按任意键打开「%Name%.hta」。 pause>nul start %Name%.hta exit 生成过程中加了变色处理,速度慢了N多CODE: [Copy to clipboard] -------------------------------------------------------------------------------- ::code zh159@bbs.cn-dos.net 2008-4-26 @echo off title 命令提示符-命令行帮助信息生成器 - code zh159@bbs.cn-dos.net 2008-4-26 set Name=命令行帮助信息 echo. echo 请稍等... >%Name%.hta echo ^<html^> >>%Name%.hta echo ^<title^>命令提示符-命令行帮助信息 - code zh159@bbs.cn-dos.net 2008-4-26^</title^> >>%Name%.hta echo ^<HTA:APPLICATION >>%Name%.hta echo APPLICATIONNAME="命令提示符-命令行帮助信息" >>%Name%.hta echo SCROLL="no" >>%Name%.hta echo INNERBORDER="no" >>%Name%.hta echo /^> >>%Name%.hta echo ^<script language="VBScript"^> >>%Name%.hta echo window.resizeTo 900, 660 >>%Name%.hta echo ileft=(window.screen.width-900)/2 >>%Name%.hta echo itop=(window.screen.height-660)/2-15 >>%Name%.hta echo window.moveTo ileft,itop >>%Name%.hta echo ^</script^> >>%Name%.hta echo ^<style^> >>%Name%.hta echo a:link {color: #000000; font:18px Tahoma; text-decoration:none;} >>%Name%.hta echo a:visited {color: #000000; font:18px Tahoma; text-decoration:none;} >>%Name%.hta echo a:hover {color: #ffffff; background-color:0000ff;} >>%Name%.hta echo a:active {color: #ff0000; background-color:ffffff;} >>%Name%.hta echo em {font:18px Tahoma; color:0000ff;}^</style^> >>%Name%.hta echo ^</style^> >>%Name%.hta echo ^<body style="FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#10bfff,endColorStr=#007db2);color:#ffffff;"^> >>%Name%.hta echo ^<table width="100%%" height="100%%" align="center" border="0" cellspacing="0" cellpadding="1" style="border: solid 1 #ffffff;"^> >>%Name%.hta echo ^<tr^> >>%Name%.hta echo ^<td width="120" height="100%%"^> >>%Name%.hta echo ^<span style="width:100%%;height:100%%; overflow-y: auto;"^> >>%Name%.hta echo ^<table align="left"^>^<tr^>^<td^> >>%Name%.hta echo 命令列表^<br^> echo. for /f %%i in ('help^|findstr /i "^[a-z]"') do ( set/a n+=1 call set/p= 共 %%n%% 个命令,正在处理...<nul set /p= <nul >>%Name%.hta echo. ^<a href="#%%i"^>%%i^</a^>^<br^> ) >>%Name%.hta echo ^<td^>^<tr^>^</table^> >>%Name%.hta echo ^</span^> >>%Name%.hta echo ^</td^> >>%Name%.hta echo ^<td^> >>%Name%.hta echo ^<span style="width:100%%;height:100%%; overflow-y: auto;"^> >>%Name%.hta echo ^<table align="left" style="font:15px Fixedsys;"^>^<tr^>^<td^> echo.&echo. echo 序号 - 命令名称 for /f %%i in ('help^|findstr /i "^[a-z]"') do ( set/a m+=1 rem call echo %%m%%. - %%i setlocal EnableDelayedExpansion set /p= <nul&set /p= <nul>"!m!. - %%i"&findstr /a:c .* "!m!. - %%i*" 2>nul&set /p= <nul endlocal >>%Name%.hta echo ^</p^>^<a name="#%%i"^>^</a^>^<em^>^<u^>%%i^</u^>^</em^>^<br^> for /f "delims=" %%f in ('%%i/?') do ( set "str=%%f" setlocal EnableDelayedExpansion set str=!str: = ! set str=!str:^<=^<! set str=!str:^>=^>! >>%Name%.hta echo. !str!^<br^> endlocal ) setlocal EnableDelayedExpansion set /p= <nul&findstr /a:a .* "!m!. - %%i*" 2>nul&echo.&del /q "!m!. - %%i" 2>nul endlocal ) >>%Name%.hta echo ^<td^>^<tr^>^</table^> >>%Name%.hta echo ^</span^> >>%Name%.hta echo ^</td^> >>%Name%.hta echo ^</tr^> >>%Name%.hta echo ^</table^> >>%Name%.hta echo ^</body^> >>%Name%.hta echo ^</html^> echo. echo 完成!按任意键打开「%Name%.hta」。 pause>nul start %Name%.hta exit x0 |