Cara Menulis Skrip Batch di Windows

Adakah anda tahu bagaimana menggunakan Command Prompt? Sekiranya anda melakukannya, anda boleh menulis fail kumpulan. Dalam bentuknya yang paling sederhana, file batch (atau skrip batch) adalah senarai beberapa perintah yang dijalankan ketika anda mengklik dua kali fail tersebut. Fail kumpulan kembali ke DOS, tetapi masih berfungsi pada versi Windows moden.

Skrip PowerShell dan skrip Bash mungkin lebih kuat, tetapi fail kumpulan masih boleh berguna jika anda perlu menjalankan perintah asas Windows.

Asas Fail Kumpulan

Fail kumpulan hanyalah fail teks yang disimpan dengan sambungan fail .bat. Anda boleh menulisnya menggunakan Notepad atau editor teks yang lebih maju seperti Notepad ++, tetapi jangan menggunakan pemproses kata seperti Microsoft Word.

Mari buat fail kumpulan mudah. Pertama, buka Notepad. Taipkan baris berikut ke dalamnya:

ECHO OFF ECHO Hello World PAUSE

Seterusnya, simpan fail dengan mengklik Fail> Simpan. Beri nama apa sahaja yang anda suka, tetapi ganti sambungan fail .txt lalai dengan pelanjutan .bat.

Contohnya, anda mungkin mahu menamakannya hello_world.bat.

Anda kini mempunyai fail kumpulan dengan peluasan fail .bat. Klik dua kali untuk menjalankannya. Fail kumpulan tertentu ini mematikan ECHO (yang membersihkan output dengan menyembunyikan perintah agar tidak dicetak pada arahan, mencetak teks "Hello World" ke layar, dan kemudian menunggu anda menekan kekunci sebelum berakhir.

Sekiranya anda tidak menambahkan PAUSEke fail, file batch hanya akan menjalankan perintahnya dan kemudian ditutup secara automatik. Dalam kes ini, ia akan mencetak "Hello World" ke tetingkap dan kemudian segera menutup tetingkap Prompt Perintah. Apabila anda ingin menjalankan perintah dengan cepat tanpa melihat output, anda boleh menghilangkannya. Sekiranya anda menjalankan beberapa arahan, anda boleh meletakkan PAUSEperintah di antara mereka.

Menulis Fail Batch Yang Lebih Kompleks

Sangat asasnya mudah untuk membuat fail kumpulan. Satu-satunya perkara yang perlu anda ubah adalah apa yang anda taipkan ke Notepad. Untuk menjalankan beberapa arahan, anda menaip setiap satu pada barisnya sendiri dan fail kumpulan akan berjalan masing-masing mengikut urutan.

Sebagai contoh, katakan kita mahu menulis fail kumpulan yang menjalankan beberapa arahan diagnostik rangkaian. Kami mungkin ingin berlari ipconfig /alluntuk melihat maklumat rangkaian, ping google.comuntuk melihat apakah pelayan Google bertindak balas, dan tracert google.commenjalankan jejak ke google.com dan melihat apakah ada masalah dalam perjalanan.

Dalam bentuk yang paling asas, kita hanya boleh meletakkan semua perintah itu dalam satu kumpulan, satu demi satu, seperti:

ipconfig / all ping google.com tracert google.com Jeda

Semasa kami menjalankan fail ini, kami hanya akan melihat output setiap arahan tepat selepas yang lain. Tetapi ini tidak semestinya cara yang sesuai untuk menulis fail kumpulan.

Contohnya, anda mungkin mahu menambah baris komen. Segala baris yang bermula dengan a ::adalah baris komen dan tidak akan dilaksanakan. Itu menjadikan mereka kaedah yang berguna untuk menjelaskan apa yang berlaku dalam fail untuk sesiapa sahaja yang mungkin anda berikan — atau untuk diri anda yang akan datang, yang mungkin lupa mengapa anda meletakkan perintah tertentu di sana.

Anda mungkin juga ingin menambahkan perintah "ECHO OFF" ke awal fail. Ini biasanya ditambahkan pada permulaan kebanyakan fail kumpulan. Apabila anda melakukan ini, perintah itu sendiri tidak akan dicetak ke Prompt Perintah, tetapi hasilnya akan menjadi. Sebagai contoh, anda akan melihat butiran sambungan rangkaian tetapi bukan garis "ipconfig / all". Sebilangan besar orang tidak peduli untuk melihat perintah, jadi ini dapat membersihkan output.

Jadi inilah yang kelihatan seperti:

:: Fail kumpulan ini memeriksa masalah sambungan rangkaian. ECHO OFF :: Lihat perincian sambungan rangkaian ipconfig / all :: Periksa sama ada Google.com dapat dihubungi ping google.com :: Jalankan traceroute untuk memeriksa laluan ke Google.com tracert google.com PAUSE

Terdapat petunjuk lain yang boleh anda jalani dengan batch file seperti ini. Sebagai contoh, anda mungkin mahu skrip kumpulan anda menjalankan perintah di atas dan kemudian membuang output ke fail teks yang dapat anda lihat kemudian. Untuk melakukannya, anda akan menggunakan >>operator selepas setiap arahan untuk menambahkan outputnya ke fail teks. Oleh kerana kita akan membaca output dari fail teks, kita boleh menghilangkan PAUSEperintah.

:: Fail kumpulan ini memeriksa masalah sambungan rangkaian :: dan menyimpan output ke fail .txt. MATI ECHO :: Lihat perincian sambungan rangkaian ipconfig / all >> results.txt :: Periksa sama ada Google.com dapat dicapai ping google.com >> results.txt :: Jalankan traceroute untuk memeriksa laluan ke Google.com tracert google. com >> hasil.txt

Setelah anda menjalankan skrip di atas, anda akan menjumpai sebuah file bernama results.txt dalam folder yang sama dengan file batch dengan output dari perintah. Tetingkap Command Prompt akan ditutup secara automatik setelah fail batch selesai dijalankan.

Contoh yang kita gunakan di atas bergantung pada sebenarnya mencetak maklumat ke Prompt Perintah supaya pengguna dapat membacanya. Walau bagaimanapun, banyak fail kumpulan dirancang untuk dijalankan secara tidak interaktif. Sebagai contoh, anda mungkin mempunyai fail kumpulan yang memadamkan banyak fail atau direktori setiap kali anda mengklik dua kali. Anda hanya perlu menggunakan delperintah untuk menghapus fail atau deltreeperintah untuk menghapus direktori. Ingat, anda hanya menggunakan perintah yang sama yang anda jalankan di tetingkap Prompt Perintah.

Pada asasnya, itulah titik utama kebanyakan fail batch - hanya menjalankan beberapa arahan satu demi satu. Walau bagaimanapun, fail kumpulan sebenarnya boleh menjadi lebih kompleks daripada ini. Sebagai contoh, anda boleh menggunakan pernyataan "JIKA" bersama dengan perintah "GOTO" untuk memeriksa nilai sesuatu dan kemudian melangkau ke baris yang berbeza bergantung pada hasilnya. Ini lebih seperti menulis program kecil sebenarnya daripada skrip cepat dan kotor. Itulah salah satu sebab mengapa fail .bat kadang-kadang dipanggil "batch program." Sekiranya anda ingin melakukan sesuatu yang lebih kompleks, anda akan mendapat banyak panduan untuk melakukan perkara tertentu dengan pengaturcaraan kumpulan dalam talian. Tetapi sekarang, anda sudah mengetahui asas-asas bagaimana menyatukan yang mudah.