ฉันจะแสดงความคิดเห็นที่พรอมต์คำสั่ง Windows ได้อย่างไร


67

อะไรคือสิ่งที่เทียบเท่า#สำหรับcmdเซสชันคอนโซลWindows เพื่อสร้างความคิดเห็น?

ระบบปฏิบัติการคือ Windows XP


1
โปรดทราบว่าcmd.exeใน Windows ไม่ใช่ 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?
Andrew Grimm

1
แรกที่เชื่อมโยงที่มีประโยชน์ จากนั้นความคิดเห็นทวิภาคสองครั้งดูเหมือนจะไม่ทำงานภายในบล็อคโค้ด (รหัสระหว่างวงเล็บเช่นในif/ forลูป)
x-yuri

@efotinis remจริง ๆ แล้วเป็นคำสั่งหรือไม่ จะไม่::ดีกว่านี้เพราะตัวมันเองกำลังถูกเพิกเฉย?
Pacerier

@Pacerier ใช่REMเป็นคำสั่งจริง แต่ฝังอยู่ใน CMD.EXE ดังนั้นควรมีประสิทธิภาพพอสมควร บนมืออื่น ๆ ที่::อาจจะได้เร็วขึ้นเพราะมันไม่สนใจทุกอย่างขึ้นปลายสาย (เช่นมันไม่ได้ตรวจสอบคำสั่งที่ถูกล่ามโซ่ใช้&)
efotinis

2
โปรดทราบว่าการใช้งาน::อาจทำให้รหัสของคุณเสียหายในบางกรณีเช่นเป็นบรรทัดสุดท้ายในบล็อกรหัส
bryc

16

คุณนำหน้าความคิดเห็นของคุณด้วยคำว่า REM

REM This is a comment.

แต่ถ้าคุณต้องการให้ความคิดเห็นของคุณพิมพ์กลับมาที่คุณคุณควรสะท้อน:

echo This is a comment you'll see.

ยอมรับว่าใช้งานได้ แต่ฉันรู้สึกประหลาดใจมากกว่านี้เล็กน้อยถ้าคำตอบคือ BTW เช่นในlolcode.com/specs/1.2#comments
Andrew Grimm

5

REMคำสั่งเพียงคำพูด (คือพูดอะไรบางอย่างเป็นความคิดเห็น) เส้นจากการถูกประหารชีวิต อย่างไรก็ตามหาก@echo offไม่ได้อยู่ในไฟล์แบทช์บรรทัดนั้นจะยังคงดังก้องไปที่หน้าจอ

เพื่อป้องกันไม่ให้มีการแสดงบรรทัดเหล่านี้คุณสามารถทำหนึ่งในสามสิ่งนี้

  1. เพิ่ม @echo off ในไฟล์แบตช์ :
    หากคุณต้องการซ่อนคำสั่งทั้งหมดรวมทั้งบรรทัด REM เพิ่ม @echo off เป็นบรรทัดแรกในไฟล์แบตช์
  2. เปลี่ยน REM เป็น @REM :
    หากคุณต้องการให้มีคำสั่งแสดงเมื่อแบตช์ไฟล์ถูกรัน แต่ยังคงต้องการซ่อนบรรทัด REM พิมพ์ @REM แทนที่จะเป็น REM
  3. ใช้: :( ie lable ไม่ถูกต้อง ) แทน REM :
    ในที่สุดการใช้ :: เป็นคำสั่งหมายเหตุแทน REM ยังป้องกันเสียงสะท้อนของบรรทัดที่ถูกสังเกต

แหล่ง


2

ฉันเชื่อว่าคำตอบของ bernhard นั้นไม่ถูกต้อง

อย่างน้อยก็ผ่าน win 7

rem comment

ในชุดไฟล์จะพิมพ์ในการส่งออก หากต้องการระงับการพิมพ์ให้ใช้

@ rem comment

หรือ

@rem comment

เช่นเดียวกันสำหรับคำสั่งอื่น ๆ ซึ่งโดยค่าเริ่มต้นจะถูกสะท้อนไปยังคอนโซล


คำสั่งREM commentจะไม่พิมพ์ผลลัพธ์ใด ๆ ลงบนหน้าจอ สำหรับการสาธิตสดเปิดพร้อมรับคำสั่งและเรียกแล้วเรียกใช้คำสั่งecho comment rem commentขอให้สังเกตว่าechoคำสั่งพิมพ์ผลลัพธ์ไปยังหน้าจอในขณะที่remคำสั่งไม่ได้
Twisty Impersonator

ฉันมักจะใช้@REM commentในสคริปต์แบทช์ของฉันเพื่อหลีกเลี่ยงพวกเขาปรากฏขึ้น ฉันอยากจะแนะนำให้แก้ไขคำตอบของเบอร์นาร์ดเพื่อรวมการใช้ @ ก่อนที่ REM ในสคริปต์แบทช์เพื่อไม่ให้มันปรากฏขึ้นแทนที่จะโพสต์คำตอบใหม่ทั้งหมด
Robin Hood

3
@RobinHood ไฟล์ชุดสะท้อนคำสั่งทั้งหมดโดยค่าเริ่มต้น (สำหรับวัตถุประสงค์การแก้จุดบกพร่อง) @ECHO OFF & SETLOCAL ...ที่ว่าทำไมมันเป็นธรรมเนียมที่จะต้องเริ่มต้นพวกเขาด้วย ด้วยวิธีนี้คุณไม่จำเป็นต้องเสริม@ทุกบรรทัดและคุณสามารถสลับไปมาได้อย่างง่ายดายECHO ONเมื่อมีสิ่งผิดปกติและคุณต้องทำการทดสอบบางอย่าง
efotinis
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.