batch file - else - 如何在批处理/ cmd中“注释”(添加注释)?




windows bat (4)

这个问题在这里已经有了答案:

我有一个批处理文件,它运行多个执行表修改的python脚本。

  1. 我想让用户注释他们不想运行的1-2个Python脚本,而不是将它们从批处理文件中删除(所以下一个用户知道这些脚本作为选项存在!)

  2. 我还想添加注释,以便特别注意它们在运行之前需要在批处理文件中更新的变量。 我看到我可以使用REM 。 但它看起来更像是在用户运行后更新进度。

是否有更适当地添加评论的语法?


多行注释

如果您想要注释的行数很多,那么如果您可以制作多行注释而不是注释每一行,则会更好。

批处理语言没有注释块,尽管有许多方法可以实现这种效果。

GOTO EndComment1
This line is comment.
And so is this line.
And this one...
:EndComment1

您可以使用GOTO标签和:标签来制作块注释。

或者,如果注释块出现在批处理文件的末尾,则可以在代码的末尾写入EXIT ,然后写入任意数量的注释以供您理解。

@ECHO OFF
REM Do something
  •
  •
REM End of code; use GOTO:EOF instead of EXIT for Windows NT and later
EXIT

Start of comment block at end of batch file
This line is comment.
And so is this line.
And this one...

robvanderwoude.com/comments.php


将注释放在与命令相同的行上:使用& :: comment

color C          & :: set red font color
echo IMPORTANT INFORMATION
color            & :: reset the color to default

说明:

&分离两个命令 ,所以在这种情况下, color C是第一个命令, :: set red font color是第二个。

重要:

本声明和评论看起来直观上正确:

goto error1         :: handling the error

但它不是评论的有效用法 。 它的作用只是因为goto忽略了第一个参数之后的所有参数。 证明是容易的,这个goto也不会失败:

goto error1 handling the error

但类似的尝试

color 17            :: grey on blue

由于color命令未知的4个参数::greyonblue ,执行命令失败。

它只会作为:

color 17     &      :: grey on blue

所以和号是不可避免的。


不,普通的旧批处理文件使用REM作为注释。 ECHO是在屏幕上打印某些内容的命令。

要“注释掉”文件的各个部分,您可以使用GOTO 。 所有这些命令/技术的例子:

REM it starts here the section below can be safely erased once the file is customised
ECHO Hey you need to edit this file before running it!  Check the instructions inside
ECHO Now press ctrl-c to interrupt execution or enter to continue
PAUSE
REM erase the section above once you have customised the file
python executed1.py
ECHO Skipping some stuff now
GOTO End
python skipped1.py
python skipped2.py
:END
python executed2.py

我能说什么? 批处理文件是时代早已逝去的遗留物,它们笨重难看。

你可以在这个网站上阅读更多。

编辑:修改了一下这个例子,让它包含你显然在寻找的元素。


使用:: :(替代REM

your codes      ::   commenttttttttttt 
your codes      REM  commenttttttttttt 

笔记:

  • 使用::可能会在嵌套逻辑( IF-ELSEFOR循环等)中导致不同的错误,并且在大多数情况下可以尝试使用代码标准REM

  • 在某些情况下,您可能需要添加 sign: & :: commenttttttttttt

ps我不知道为什么发明人找不到比REM更好的符号。







comment-conventions