Skrip Batch - Penyelarasan

Hai sana, pahlawan pengkomputeran masa depan! Hari ini, kita akan melangkah ke dalam dunia yang menarik penyelarasan Skrip Batch. Sebagai guru komputer tetangga yang ramah, saya di sini untuk menghidangkan anda melalui pengembaraan ini dengan beberapa contoh menarik dan anekdot personal. Jadi, pasangkan sepatamu dan mari kita masuk ke dalam!

Batch Script - Debugging

Menjelaskan Penyelarasan

Sebelum kita mula, mari bicarakan apa sebenarnya penyelarasan berarti. Bayangkan anda memanggang kue, tetapi dia tidak menjadi betul. Penyelarasan adalah seperti melalui resipi anda langkah demi langkah untuk mengetahui di mana anda tersilap. Dalam pengkomputeran, ia adalah proses mencari dan membaiki kesilapan dalam kod anda.

Menggunakan perintah echo

Perintah echo adalah seperti lampu sorot anda di gua gelap pengkomputeran. Ia membantu anda melihat apa yang berlaku di dalam skrip anda dengan mencetak mesej ke skrin.

Contoh

Mari kita mulakan dengan contoh mudah:

@echo off
echo Hello, World!
echo Direktori semasa adalah: %CD%
echo Tarikh hari ini adalah: %DATE%

Output

Hello, World!
Direktori semasa adalah: C:\Users\YourName\Documents
Tarikh hari ini adalah: Wed 04/12/2023

Dalam contoh ini, kita menggunakan echo untuk menunjukkan satu penggunaan, direktori semasa, dan tarikh hari ini. Ia seperti meninggalkan jejak roti di kod anda untuk membantu anda menemui jalan anda!

Menggunakan perintah pause

Perintah pause adalah seperti menekan butang pause di remote control anda. Ia menghentikan skrip dan menunggu anda menekan suatu kekunci sebelum teruskan.

Contoh

Mari kita ubah skrip sebelum ini:

@echo off
echo Hello, World!
echo Direktori semasa adalah: %CD%
pause
echo Tarikh hari ini adalah: %DATE%

Output

Hello, World!
Direktori semasa adalah: C:\Users\YourName\Documents
Tekan mana-mana kekunci untuk teruskan . . .
Tarikh hari ini adalah: Wed 04/12/2023

Di sini, perintah pause memberi anda peluang untuk meninjau output sebelum skrip teruskan. Ia seperti mengambil suatu perasaan saat di dalam maraton!

Menyimpan mesej kesilapan ke fail lain

kadang-kadang, anda mahu menyimpan catatan apa yang berlaku dalam skrip anda, terutama bila hal-hal tidak berjalan lancar. Ini di mana penggunaan log menjadi berguna.

Contoh

Mari kita buat skrip yang menglog kesilapan ke fail:

@echo off
echo Memulakan skrip... >> log.txt
echo Mencuba untuk menyalin fail... >> log.txt
copy nonexistent.txt destination.txt 2>> log.txt
if errorlevel 1 (
echo Kesilapan berlaku semasa menyalin fail. Semak log.txt untuk butiran.
) else (
echo Fail disalin dengan jaya!
)

Dalam contoh ini, kita mencuba untuk menyalin fail yang tidak wujud. Penyunting 2>> mengalihkan mesej kesilapan ke fail log.

Output

Di skrin:

Kesilapan berlaku semasa menyalin fail. Semak log.txt untuk butiran.

Dalam log.txt:

Memulakan skrip...
Mencuba untuk menyalin fail...
The system cannot find the file specified.

Menggunakan ErrorLevel untuk mengesan kesilapan dan menglognya

Variabel ErrorLevel adalah seperti cincin mood bagi skrip anda. Ia berubah warna (nilai) bergantung kepada sama ada perintah terakhir adalah berjaya atau tidak.

Contoh

Mari kita tingkatkan skrip sebelum ini:

@echo off
echo Memulakan skrip... >> log.txt
echo Mencuba untuk menyalin fail... >> log.txt
copy nonexistent.txt destination.txt 2>> log.txt
if errorlevel 1 (
echo Tingkat kesilapan: %errorlevel% >> log.txt
echo Kesilapan berlaku semasa menyalin fail. Semak log.txt untuk butiran.
) else (
echo Fail disalin dengan jaya!
)

Output

Di skrin:

Kesilapan berlaku semasa menyalin fail. Semak log.txt untuk butiran.

Dalam log.txt:

Memulakan skrip...
Mencuba untuk menyalin fail...
The system cannot find the file specified.
Tingkat kesilapan: 1

Dalam contoh ini, kita menggunakan ErrorLevel untuk mengesan jika terjadi kesilapan dan menglog nilai itu. Ia seperti memiliki pengesan kesilapan yang terbina dalam!

Summary Metode Penyelarasan

Ini adalah jadual ringkasan metode penyelarasan yang kita telah belajar:

Metode Keterangan Contoh
echo Menunjukkan mesej di skrin echo Hello, World!
pause Menhentikan eksekusi skrip pause
Logging Menulis mesej ke fail echo Message >> log.txt
ErrorLevel Mengesan kesilapan if errorlevel 1 (echo Error occurred)

Ingat, penyelarasan adalah seperti menjadi detektif dalam misteri kod anda sendiri. Gunakan alat ini untuk mengumpulkan petunjuk dan meng حل kasus skrip yang berkelakuan buruk!

Saat kita mengakhiri pelajaran ini, saya teringat tentang masa saya menyelaraskan skrip yang agak rumit. Saya merasa seperti tersesat di dalam labirin, tetapi dengan menggunakan teknik ini, saya dapat menemukan jalan keluar. Dan itu keindahan penyelarasan - ia bukan hanya tentang membaiki kesilapan, tetapi tentang memahami kod anda dalam level yang lebih mendalam.

Jadi, murid-murid tercinta, jangan takut kepada nyamuk dalam kod anda. Mereka bukan hama, tetapi peluang untuk belajar dan tumbuh sebagai seorang pengrogram. Selamat penyelarasan, dan mayat skrip anda sentiasa berjalan lancar!

Credits: Image by storyset