我想在 .bat 文件中记下一些笔记。哪些代码可以添加到注释中,以便它们不会被视为要运行的命令?

Mat*_*Wai -1 code batch-file windows-10

我想在 .bat 文件中记下一些笔记。哪些代码可以添加到注释中,以便它们不会被视为要运行的命令?

use*_*686 5

在 cmd.exe 脚本中,使用REM(或@REM强制禁用回显)添加注释。

rem This is a comment.
Run Code Online (Sandbox Code Playgroud)

虽然技术上不是注释前缀,::但也可以以相同的方式使用(它定义了一个未使用的“goto”标签):

:: This is a comment.
Run Code Online (Sandbox Code Playgroud)

注意

当标签用作括号内代码块中的注释或用于命令时,命令处理器期望每个标签后跟至少一个命令,因此当跳转到标签时,它将有一些东西要执行。

cmd即使第二行被格式化为标签,shell 也会尝试执行它(这会导致错误):

(
echo This example will fail
:: some comment
)
Run Code Online (Sandbox Code Playgroud)

在括号内的代码块中工作时,rem对所有注释行使用肯定更安全。

使用标签作为注释的来源

您还可以使用变量作为注释

也可以使用变量作为注释。这对于有条件地阻止执行命令很有用:

@echo off 
setlocal
if /i "%~1"=="update" (set _skip=) Else (set _skip=REM)
%_skip% copy update.dat 
%_skip% echo Update applied 
... 
Run Code Online (Sandbox Code Playgroud)

在批处理文件中使用上述代码片段时,%_skip%仅当批处理文件update作为参数调用时,才会执行 以 开头的行。

使用变量作为注释的