Windowsコマンドプロンプトでコメントを入力するにはどうすればよいですか?


67

コメントを作成するには#、Windows cmdコンソールセッションと同等のものは何ですか?

オペレーティングシステムはWindows XPです。


1
ことに注意してくださいcmd.exeWindowsであるDOSいない -それだけのものと類似構文は、完全なWindowsアプリケーションですcommand.com
grawity

回答:


90

REM 標準的な方法です:

REM this is a comment

バッチファイルで一般的に見られる二重コロン規則を使用することもできます。

:: another comment

単一のコロンとそれに続く文字列はラベルですが、二重コロンとそれ以降は静かに無視されます。この形式はREMコマンドよりも読みやすいと主張することができます。

これらのメソッドは両方とも、行の先頭でのみ機能することに注意してください。コマンドにコメントを追加する場合は&、次のようにコマンド連結文字()でコメントを使用できます。

dir & REM a comment
dir &:: another one

2
ありがとう。これは、最初に遭遇した場合にのみ機能しますdir :: commentか?
アンドリューグリム

1
まずは便利なリンク。その場合、ダブルコロンコメントはコードブロック(if/のように括弧で囲まれたコード)内では機能しないようですfor
x-yuri 14年

@efotinis、rem実際にはコマンドですか?::それ自体は無視されているので、良くないでしょうか?
パセリエ

@ Pacerier、yes REMは実際のコマンドですが、CMD.EXEに組み込まれているため、かなり効率的です。一方、::行末までのすべてを無視するため、高速になる可能性があります(たとえば、を使用して連鎖コマンドをチェックしません&)。
efotinis

2
を使用::すると、コードブロックの最終行など、場合によってはコードが破損する可能性があることに注意してください。
-bryc


5

REMコマンドのみ発言が実行されてからのライン(つまりはコメントとして何かを言います)。ただし、@echo offバッチファイルにない場合、その行は引き続き画面にエコーされます。

これらの行が表示されないようにするには、次の3つのいずれかを実行できます。

  1. @echo offをバッチファイルに追加する
    すべてのコマンドとREM行を非表示にする場合は、バッチファイルの最初の行として@echo offを追加します。
  2. @REMにREMを変更します
    あなたは、バッチファイルが実行されたときに示すコマンドを持つようにしたい場合は、まだREMラインはREMの代わりに@REMを入力隠したいです。
  3. REMの代わりに::(つまりinvalid lable)を使用します
    最後に、REMの代わりにremarkコマンドとして::を使用すると、リマークされた行のエコーも防止されます。

ソース


2

bernhardが提供する答えは間違っていると思います。

少なくとも勝利7まで

rem comment

バッチファイルでは、出力に印刷されます。印刷を抑制するには、

@ rem comment

または

@rem comment

同じことが他のコマンドにも当てはまり、デフォルトではコンソールにエコーされます。


このコマンドREM commentは、画面に出力を印刷しません。ライブデモの場合は、コマンドプロンプトを開き、コマンドを実行してecho commentから実行しrem commentます。echoコマンドは出力を画面に出力しますが、remコマンドは出力しなかったことに注意してください。
私は、モニカを復活させる14

@REM commentバッチスクリプトが表示されないように常に使用しています。まったく新しい回答を投稿するのではなく、バッチスクリプトでREMの前に@を使用して表示されないように、Bernardsの回答を編集することをお勧めします。
ロビンフッド14年

3
@RobinHood、バッチファイルはデフォルトですべてのコマンドをエコーし​​ます(デバッグ目的)。そのため、コマンドをで開始するのが慣例@ECHO OFF & SETLOCAL ...です。この方法では@、すべての行の先頭に追加する必要がなくECHO ON、何か問題が発生したときに簡単に切り替えて、テストを行う必要があります。
efotinis
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.