Sök…


Introduktion

Kommentarer används för att visa information i ett batchskript.

Syntax

  • REM

  • & REM

  • ::

  • & ::

  • Goto: Etikett

        Comments. You can also use |>< ,etc.
    

    :Märka

Använda REM för kommentarer

REM This is a comment
  • REM är det officiella kommentarkommandot.

Använda etiketter som kommentarer

::This is a label that acts as a comment

Den dubbla kolon :: -kommentaren som visas ovan dokumenteras inte som ett kommentarkommando, men det är ett speciellt fall av en etikett som fungerar som en kommentar.

Varning : när etiketter används som kommentarer i ett parenteserat kodblock eller for kommando, förväntar kommandoprocessorn att varje etikett ska följas av minst ett kommando, så när ett hopp görs till etiketten kommer det att ha något att utföra.

cmd skalet försöker köra den andra raden även om den är formaterad som en etikett (och detta orsakar ett fel ):

(
echo This example will fail
:: some comment
)

När man arbetar inom parenteserade kodblock är det definitivt säkrare att använda REM för alla kommentarrader.

Använda variabler som kommentarer

Det är också möjligt att använda variabler som kommentarer. Detta kan vara användbart för att villkorligt förhindra att kommandon körs:

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

När du använder ovanstående kodavsnitt i en batchfil körs raderna som börjar med %_skip% endast om batchfilen kallas med update som parameter.

Blockera kommentarer

Batchfilformatet har inte en syntax för blockkommentarer, men det finns en enkel lösning för detta.

Normalt läses varje rad i en batchfil och körs sedan av parser, men ett goto uttalande kan användas för att hoppa förbi ett block av vanlig text (som kan användas som en blockkommentar):

@echo off
goto :start

A multi-line comment block can go here.
It can also include special characters such as | >

:start

Eftersom parsern aldrig ser raderna mellan goto :start uttalandet och :start etiketten kan det innehålla godtycklig text (inklusive kontrolltecken utan att behöva undkomma dem) och parsaren kommer inte att kasta ett fel.

Kommentera kodens rad

För att kommentera samma rad som koden kan du använda &:: eller &rem . Du kan också använda && eller || att ersätta & .

Exempel:

@echo off
echo This is a test &::This is a comment
echo This is another test &rem This is another comment
pause

En nyfikenhet : SET kommandot tillåter begränsade inline-kommentarer utan &rem :

set "varname=varvalue"    limited inline comment here

begränsningar:

  • syntax med dubbla citat set "varname=varvalue" eller set "varname=" ,
  • en inline-kommentar får inte innehålla någon dubbelcitationstecken,
  • alla cmd giftiga tecken | < > & måste rymmas ordentligt som ^| ^< ^> ^& ,
  • parenteser ( ) måste rymmas ordentligt som ^( ^) inom ett parenteserat kodblock.

Batch- och WSF-hybridkommentar

<!-- : Comment

Det här fungerar både med batchskript och WSF. Den avslutande taggen ( --> ) fungerar bara i WSF.

Koda Lyckas både i batch och WSF?
<!--: Comment Sann
<!--: Comment --> False - Den avslutande taggen fungerar bara för WSF
--> Falsk


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow