มีหลายวิธีในการแสดงความคิดเห็นในไฟล์แบทช์
1) ใช้ rem
นี่คือวิธีการอย่างเป็นทางการ ดูเหมือนว่าจะใช้เวลาในการดำเนินการนานกว่า::แม้ว่าจะเห็นได้ชัดว่าหยุดการแยกวิเคราะห์ก่อนกำหนดก่อนที่ carets จะถูกประมวลผล ร้อยละการขยายตัวเกิดขึ้นก่อนที่จะ rem และ::มีการระบุดังนั้นการใช้ร้อยละที่ไม่ถูกต้องเช่น%~จะทำให้เกิดข้อผิดพลาดถ้าร้อยละมีอยู่ ปลอดภัยที่จะใช้ที่ใดก็ได้ในบล็อกรหัส
2) การใช้ป้ายกำกับ:, ::หรือ:;อื่น ๆ
สำหรับ:: comment, ': ความคิดเห็น' เป็นชื่อป้ายกำกับที่ไม่ถูกต้องเนื่องจากเริ่มต้นด้วยอักขระที่ไม่ถูกต้อง มันก็โอเคที่จะใช้เครื่องหมายทวิภาคตรงกลางของฉลาก หากพื้นที่เริ่มต้นที่จุดเริ่มต้นของฉลากจะถูกลบออกจะกลายเป็น: label :labelหากมีช่องว่างหรือเครื่องหมายโคลอนปรากฏอยู่ตรงกลางของป้ายกำกับชื่อส่วนที่เหลือจะไม่ถูกแปลความหมายว่าหากมีป้ายกำกับสองป้าย:f:ooและ:f rrทั้งคู่จะถูกตีความเป็น:fและมีเพียงป้ายกำกับที่กำหนดในภายหลังในไฟล์เท่านั้นที่จะถูกข้ามไป ส่วนที่เหลือของฉลากแสดงความคิดเห็นได้อย่างมีประสิทธิภาพ มีทางเลือกหลายที่จะมี::ระบุไว้ที่นี่ คุณไม่สามารถgotoหรือฉลาก และจะไม่ทำงานcall::foogoto :foogoto ::foo
มันทำงานได้ดีนอกบล็อคโค้ด แต่หลังจากที่เลเบลในบล็อคโค้ดไม่ถูกต้องหรือไม่จะต้องมีบรรทัดคำสั่งที่ถูกต้อง :: commentเป็นอีกคำสั่งที่ใช้ได้จริง มันตีความมันเป็นคำสั่งและไม่ใช่ฉลาก; คำสั่งมีความสำคัญ ซึ่งเป็นคำสั่งให้ cd ไปยัง::โวลุ่มซึ่งจะทำงานหากคุณดำเนินการsubst :: C:\ไม่เช่นนั้นคุณจะได้รับข้อผิดพลาดของโวลุ่มไม่พบ นั่นเป็นเหตุผลว่าทำไม:;เนื้อหาจึงดีกว่าเพราะไม่สามารถตีความได้ด้วยวิธีนี้ดังนั้นจึงตีความเป็นป้ายกำกับแทนซึ่งทำหน้าที่เป็นคำสั่งที่ถูกต้อง นี่ไม่ใช่แบบเรียกซ้ำคือป้ายกำกับถัดไปไม่จำเป็นต้องมีคำสั่งหลังจากนั้น นั่นเป็นเหตุผลที่พวกเขามาในสอง
echo somethingคุณจำเป็นต้องให้คำสั่งที่ถูกต้องหลังจากเช่นฉลาก เลเบลในบล็อครหัสต้องมาพร้อมกับคำสั่งที่ถูกต้องอย่างน้อยหนึ่งคำดังนั้นบรรทัดจะมีสองคู่ คุณจะได้รับ)ข้อผิดพลาดที่ไม่คาดคิดหากมีช่องว่างหรือวงเล็บปิดในบรรทัดถัดไป หากมีช่องว่างระหว่างสอง::บรรทัดคุณจะได้รับข้อผิดพลาดทางไวยากรณ์ที่ไม่ถูกต้อง
คุณยังสามารถใช้ตัวดำเนินการคาเร็ตใน::ความคิดเห็นดังนี้:
@echo off
echo hello
(
:;(^
this^
is^
a^
comment^
)
:;
)
:;^
this^
is^
a^
comment
:;
)
แต่คุณต้องการการติดตาม:;เนื่องจากเหตุผลที่กล่าวไว้ข้างต้น
@echo off
(
echo hello
:;
:; comment
:; comment
:;
)
echo hello
มันใช้ได้ดีตราบใดที่มีเลขคู่ นี้ไม่ต้องสงสัยวิธีที่ดีที่สุดที่จะแสดงความคิดเห็น - มี 4 :;เส้นและ ด้วย:;คุณไม่ได้รับข้อผิดพลาดใด ๆ ที่จะต้องมีการระงับการใช้หรือ2> nul subst :: C:\คุณสามารถใช้subst :: C:\เพื่อให้ปริมาณข้อผิดพลาดที่ไม่พบหายไป แต่มันหมายความว่าคุณจะต้องยังใส่ C: ::\ในรหัสเพื่อป้องกันไม่ให้ไดเรกทอรีที่ทำงานของคุณจากการเป็น
หากต้องการแสดงความคิดเห็นในตอนท้ายของบรรทัดคุณสามารถทำได้
command &::หรือcommand & rem commentแต่จะต้องมีจำนวนคู่เช่น:
@echo off
(
echo hello & :;yes
echo hello & :;yes
:;
)
echo hello
เป็นครั้งแรกที่echo hello & :;yesมีคำสั่งที่ถูกต้องในบรรทัดถัดไป แต่ครั้งที่สองไม่ได้ดังนั้นจึงต้องการอย่างใดอย่างหนึ่งคือ& :;yes:;
3) การใช้ตัวแปรสภาพแวดล้อมที่ไม่ถูกต้อง
%= comment =%. ในแบตช์ไฟล์ตัวแปรสภาพแวดล้อมที่ไม่ได้กำหนดจะถูกลบออกจากสคริปต์ &ซึ่งทำให้มันเป็นไปได้ที่จะใช้พวกเขาในตอนท้ายของบรรทัดโดยไม่ต้องใช้ มันเป็นเรื่องปกติที่จะใช้ตัวแปรสภาพแวดล้อมที่ไม่ถูกต้องเช่นที่มีเครื่องหมายเท่ากับ ไม่จำเป็นต้องเพิ่มส่วนเกิน แต่ทำให้ดูสมมาตร นอกจากนี้ชื่อตัวแปรที่ขึ้นต้นด้วย "=" จะถูกสงวนไว้สำหรับตัวแปรแบบไดนามิกที่ไม่มีเอกสาร ตัวแปรแบบไดนามิกเหล่านั้นไม่สิ้นสุดด้วย "=" ดังนั้นเมื่อใช้ "=" ทั้งที่จุดเริ่มต้นและจุดสิ้นสุดของความคิดเห็นจะไม่มีความเป็นไปได้ของการปะทะกันของชื่อ ความคิดเห็นที่ไม่สามารถมีหรือ%:
@echo off
echo This is an example of an %= Inline Comment =% in the middle of a line.
4) ในฐานะคำสั่งให้เปลี่ยนเส้นทาง stderr ไปเป็น nul
@echo off
(
echo hello
;this is a comment 2> nul
;this is another comment 2> nul
)
5) ในตอนท้ายของไฟล์ทุกอย่างหลังจากวงเล็บ unclosed คือความคิดเห็น
@echo off
(
echo hello
)
(this is a comment
this is a comment
this is a comment