โฮมเพจ » ทำอย่างไร » วิธีการเขียนสคริปต์ชุดบน Windows

    วิธีการเขียนสคริปต์ชุดบน Windows

    คุณรู้วิธีใช้ Command Prompt หรือไม่? หากคุณเป็นเช่นนั้นคุณสามารถเขียนไฟล์แบตช์ ในรูปแบบที่ง่ายที่สุดไฟล์แบตช์ (หรือแบทช์สคริปต์) เป็นรายการของคำสั่งต่าง ๆ ที่ถูกเรียกใช้งานเมื่อคุณดับเบิลคลิกที่ไฟล์ ไฟล์แบตช์ไปตลอดทางจนถึง DOS แต่ยังคงใช้งานได้กับ Windows รุ่นใหม่.

    สคริปต์ PowerShell และสคริปต์ Bash อาจมีประสิทธิภาพมากกว่า แต่ไฟล์แบตช์ยังคงมีประโยชน์มากมายหากคุณต้องการเรียกใช้คำสั่ง Windows พื้นฐาน.

    พื้นฐานของไฟล์แบทช์

    ไฟล์แบตช์เป็นเพียงไฟล์ข้อความที่บันทึกด้วยนามสกุลไฟล์. bat คุณสามารถเขียนได้โดยใช้ Notepad หรือโปรแกรมแก้ไขข้อความขั้นสูงเช่น Notepad ++ แต่อย่าใช้โปรแกรมประมวลผลคำเช่น Microsoft Word.

    มาสร้างไฟล์แบ็ตช์ง่ายๆ ก่อนอื่นให้เปิด Notepad พิมพ์บรรทัดต่อไปนี้ลงไป:

    ECHO OFF ECHO Hello World PAUSE

    ถัดไปบันทึกไฟล์โดยคลิกไฟล์> บันทึก ตั้งชื่อใด ๆ ที่คุณต้องการ แต่แทนที่นามสกุลไฟล์. txt เริ่มต้นด้วยนามสกุล. bat.

    ตัวอย่างเช่นคุณอาจต้องการตั้งชื่อ hello_world.bat .

    ตอนนี้คุณมีไฟล์แบตช์ที่มีนามสกุลไฟล์. bat คลิกสองครั้งเพื่อเรียกใช้ ไฟล์แบตช์นี้โดยเฉพาะตั้งปิด ECHO (ซึ่งล้างข้อมูลเอาต์พุตโดยการซ่อนคำสั่งจากการพิมพ์ที่พรอมต์พิมพ์ข้อความ“ Hello World” ไปที่หน้าจอแล้วรอให้คุณกดปุ่มก่อนที่มันจะจบ.

    หากคุณไม่ได้เพิ่ม หยุด ไฟล์แบตช์จะเรียกใช้คำสั่งจากนั้นปิดโดยอัตโนมัติ ในกรณีนี้มันจะพิมพ์“ Hello World” ไปที่หน้าต่างแล้วปิดหน้าต่างพรอมต์คำสั่งทันที เมื่อคุณต้องการเรียกใช้คำสั่งอย่างรวดเร็วโดยไม่เห็นเอาต์พุตคุณสามารถข้ามสิ่งนี้ได้ หากคุณใช้หลายคำสั่งคุณสามารถวาง หยุด คำสั่งในระหว่างพวกเขา.

    การเขียนไฟล์ Batch ที่ซับซ้อนมากขึ้น

    มันง่ายมากที่จะสร้างไฟล์แบตช์ สิ่งเดียวที่คุณต้องเปลี่ยนคือสิ่งที่คุณพิมพ์ลงใน Notepad ในการรันหลายคำสั่งคุณพิมพ์แต่ละคำสั่งบนบรรทัดของมันเองและแบตช์ไฟล์จะรันแต่ละคำสั่งตามลำดับ.

    ตัวอย่างเช่นสมมติว่าเราต้องการเขียนไฟล์แบตช์ที่รันคำสั่งการวินิจฉัยเครือข่ายหลายคำสั่ง เราอาจต้องการเรียกใช้ ipconfig / ทั้งหมด เพื่อดูข้อมูลเครือข่าย, ping google.com เพื่อดูว่าเซิร์ฟเวอร์ของ Google ตอบรับหรือไม่และ tracert google.com เพื่อเรียกใช้ traceroute ไปยัง google.co.th และดูว่ามีปัญหาใด ๆ หรือไม่.

    ในรูปแบบพื้นฐานที่สุดเราสามารถวางคำสั่งทั้งหมดเหล่านั้นลงในไฟล์แบทช์โดยเรียงตามลำดับดังนี้:

    ipconfig / ping ทั้งหมด google.com tracert google.com หยุดชั่วคราว

    เมื่อเราเรียกใช้ไฟล์นี้เราจะเห็นผลลัพธ์ของแต่ละคำสั่งทันที แต่นี่ไม่ใช่วิธีที่เหมาะสมที่สุดในการเขียนไฟล์แบตช์.

    ตัวอย่างเช่นคุณอาจต้องการเพิ่มบรรทัดความคิดเห็น บรรทัดใด ๆ ที่ขึ้นต้นด้วย :: เป็นบรรทัดความคิดเห็นและจะไม่ถูกดำเนินการ นั่นทำให้พวกเขาเป็นวิธีที่มีประโยชน์ในการอธิบายสิ่งที่เกิดขึ้นในไฟล์สำหรับทุกคนที่คุณอาจมอบให้กับ - หรือเพื่อตนเองในอนาคตของคุณซึ่งอาจลืมว่าทำไมคุณถึงสั่งงานบางอย่างในนั้น.

    คุณอาจต้องการเพิ่มคำสั่ง "ECHO OFF" ไปยังจุดเริ่มต้นของไฟล์ โดยทั่วไปจะเพิ่มในส่วนเริ่มต้นของไฟล์แบตช์ส่วนใหญ่ เมื่อคุณทำสิ่งนี้คำสั่งเหล่านั้นจะไม่ถูกพิมพ์ไปยังพรอมต์คำสั่ง แต่ผลลัพธ์จะเป็น ตัวอย่างเช่นคุณจะเห็นรายละเอียดการเชื่อมต่อเครือข่าย แต่ไม่ใช่บรรทัด "ipconfig / all" คนส่วนใหญ่ไม่สนใจที่จะเห็นคำสั่งดังนั้นสิ่งนี้สามารถล้างเอาต์พุต.

    ดังนั้นนี่คือสิ่งที่อาจมีลักษณะ:

    :: ไฟล์แบตช์นี้จะตรวจสอบปัญหาการเชื่อมต่อเครือข่าย ECHO OFF :: ดูรายละเอียดการเชื่อมต่อเครือข่าย ipconfig / ทั้งหมด :: ตรวจสอบว่า Google.com สามารถเข้าถึง ping ได้หรือไม่ google.com :: เรียกใช้ traceroute เพื่อตรวจสอบเส้นทางไปยัง Google.com tracert google.com หยุดชั่วคราว

    มีทิศทางอื่นที่คุณสามารถไปกับไฟล์แบทช์เช่นนี้ได้ ตัวอย่างเช่นคุณอาจต้องการให้ชุดสคริปต์ของคุณเรียกใช้คำสั่งข้างต้นแล้วถ่ายโอนข้อมูลไปยังไฟล์ข้อความที่คุณสามารถดูในภายหลัง ในการทำเช่นนั้นคุณจะต้องใช้ >> ตัวดำเนินการหลังจากแต่ละคำสั่งเพื่อผนวกเอาต์พุตไปยังไฟล์ข้อความ ในขณะที่เรากำลังจะอ่านผลลัพธ์จากไฟล์ข้อความต่อไปเราสามารถละเว้น หยุด คำสั่ง.

    :: ไฟล์แบตช์นี้ตรวจสอบปัญหาการเชื่อมต่อเครือข่าย :: และบันทึกผลลัพธ์เป็นไฟล์. txt ECHO OFF :: ดูรายละเอียดการเชื่อมต่อเครือข่าย ipconfig / all >> results.txt :: ตรวจสอบว่า Google.com สามารถเข้าถึงได้ ping google.com หรือไม่ >> results.txt :: เรียกใช้ traceroute เพื่อตรวจสอบเส้นทางไปยัง Google.com tracert google com >> results.txt

    หลังจากที่คุณเรียกใช้สคริปต์ข้างต้นคุณจะพบไฟล์ชื่อ results.txt ในโฟลเดอร์เดียวกับไฟล์แบตช์ที่มีเอาต์พุตของคำสั่ง หน้าต่างพรอมต์คำสั่งจะปิดโดยอัตโนมัติเมื่อไฟล์ชุดทำงานเสร็จ.

    ตัวอย่างที่เราใช้ด้านบนอาศัยการพิมพ์ข้อมูลไปยังพรอมต์คำสั่งเพื่อให้ผู้ใช้สามารถอ่านได้ อย่างไรก็ตามไฟล์แบตช์จำนวนมากได้รับการออกแบบให้รันแบบไม่โต้ตอบ ตัวอย่างเช่นคุณอาจมีไฟล์แบตช์ที่ลบหลายไฟล์หรือไดเรกทอรีเมื่อใดก็ตามที่คุณดับเบิลคลิก คุณแค่ต้องใช้ เดล คำสั่งเพื่อลบไฟล์หรือ deltree คำสั่งเพื่อลบไดเรกทอรี จำไว้ว่าคุณแค่ใช้คำสั่งเดียวกับที่คุณเรียกใช้ในหน้าต่างพรอมต์คำสั่ง.

    โดยพื้นฐานแล้วนั่นคือจุดของไฟล์แบทช์ส่วนใหญ่ - เพียงแค่รันคำสั่งสองสามคำสั่งทีละไฟล์ อย่างไรก็ตามไฟล์แบตช์อาจมีความซับซ้อนมากกว่านี้ ตัวอย่างเช่นคุณสามารถใช้คำสั่ง“ IF” พร้อมกับคำสั่ง“ GOTO” เพื่อตรวจสอบค่าของบางอย่างจากนั้นข้ามไปที่บรรทัดอื่นขึ้นอยู่กับผลลัพธ์ นี่เหมือนกับการเขียนโปรแกรมเล็ก ๆ จริง ๆ มากกว่าสคริปต์ที่รวดเร็วและสกปรก นั่นเป็นเหตุผลหนึ่งที่ทำให้ไฟล์. bat บางครั้งเรียกว่า "โปรแกรมแบตช์" หากคุณต้องการทำอะไรที่ซับซ้อนกว่านี้คุณจะพบคำแนะนำมากมายในการทำสิ่งต่าง ๆ ด้วยการเขียนโปรแกรมแบบออนไลน์ แต่ตอนนี้คุณรู้พื้นฐานเกี่ยวกับวิธีการขว้างคนง่ายๆเข้าด้วยกัน.