batch-file
バッチファイルのコメント
サーチ…
前書き
コメントは、バッチスクリプトで情報を表示するために使用されます。
構文
REM
&REM
::
&::
後藤:ラベル
Comments. You can also use |>< ,etc.:ラベル
コメントにREMを使用する
REM This is a comment
-
REMは公式のコメントコマンドです。
コメントとしてのラベルの使用
::This is a label that acts as a comment
上記のdouble-colon :: commentは、コメントコマンドであるとは記録されていませんが、コメントとして機能するラベルの特殊なケースです。
注意 :ブラケット付きコードブロック内またはコマンドforにラベルをコメントとして使用する場合、コマンドプロセッサーはすべてのラベルに少なくとも1つのコマンドが続くことを期待しているため、ラベルにジャンプすると実行するものがあります。
cmdシェルは、ラベルとしてフォーマットされていても、2行目を実行しようとします ( エラーが発生します )。
(
echo This example will fail
:: some comment
)
括弧で囲まれたコードブロック内で作業するときは、すべてのコメント行にREMを使用することは間違いなく安全です。
変数をコメントとして使用する
変数をコメントとして使用することもできます。これは条件付きでコマンドが実行されるのを防ぐのに便利です:
@echo off
setlocal
if /i "%~1"=="update" (set _skip=) Else (set _skip=REM)
%_skip% copy update.dat
%_skip% echo Update applied
...
バッチファイルで上記のコードスニペットを使用すると、 %_skip%始まる行は、バッチファイルがupdateをパラメータとして呼び出された場合にのみ実行されます。
ブロックコメント
バッチファイル形式にはブロックコメント構文はありませんが、簡単な回避策があります。
通常、バッチファイルの各行が読み込まれ、パーサによって実行されますが、 goto文を使用して、ブロックコメントとして使用できるプレーンテキストのブロックをジャンプすることができます。
@echo off
goto :start
A multi-line comment block can go here.
It can also include special characters such as | >
:start
パーサは、 goto :start文と:startラベルの間の行を決して見ないので、任意のテキスト(エスケープする必要のない制御文字を含む)を含むことができ、パーサーはエラーをスローしません。
コードの行にコメントする
コードと同じ行にコメントするには、 &::または&rem使用できます。 &&または||使用することもできます。 &を置き換える。
例:
@echo off
echo This is a test &::This is a comment
echo This is another test &rem This is another comment
pause
好奇心 : SETコマンドは、 &rem使わないで限定的なインラインコメントを許可します:
set "varname=varvalue" limited inline comment here
制限事項:
- 二重引用符で
set "varname=varvalue"構文は、set "varname=varvalue"またはset "varname="、 - インラインコメントに二重引用符を含めることはできませんが、
- 任意の
cmd有毒キャラクター| < > &は^| ^< ^> ^&として適切にエスケープする必要があります^| ^< ^> ^& - 括弧
( )は 、括弧内のコードブロック内で^( ^)として正しくエスケープする必要があります。
バッチおよびWSFハイブリッドコメント
<!-- : Comment
これは、バッチスクリプトとWSFの両方で機能します。終了タグ( --> )は、WSFでのみ動作します。
| コード | バッチとWSFの両方で問題はありますか? |
|---|---|
<!--: Comment | 真 |
<!--: Comment --> | False - 終了タグはWSFでのみ機能します |
--> | 偽 |