Sistem umum dan / atau peristiwa lingkungan seperti melanjutkan dari siaga atau kehilangan koneksi jaringan dapat menyebabkan masalah untuk aplikasi tertentu yang berharap akan selalu aktif dan terhubung. Jadi jika Anda memiliki aplikasi tertentu yang mogok atau masuk ke mode "tidak merespons" agak sering dan restart adalah satu-satunya perbaikan untuk itu, kami memiliki perbaikan sederhana untuk Anda dalam bentuk skrip batch yang dapat disesuaikan untuk cukup membunuh aplikasi dan restart itu.
Selain situasi yang jelas di atas, skrip ini dapat digunakan untuk berbagai tugas yang bermanfaat, seperti:
Menyesuaikan skrip harus cukup jelas dengan komentar, jadi cukup konfigurasikan skrip dengan tepat dan Anda siap.
@ECHO OFF ECHO Mulai Ulang Aplikasi ECHO Ditulis oleh: Jason Faulkner ECHO SysadminGeek.com ECHO. GEMA. SETLOCAL EnableExtensions REM Masukkan informasi aplikasi. SET AppName = Nama Aplikasi SET ExeFile = FileToLaunch.exe SET ExePath = C: PathToApplication REM Pilih kondisi untuk mematikan aplikasi. REM A nilai 1 = Ya, 0 = Tidak SET KillIfRunning = 1 SET KillIfNotResponding = 1 SET KillIfUnknownStatus = 1 REM Tentukan kapan untuk memulai aplikasi: REM 1 = Mulai hanya jika proses sebelumnya terbunuh. REM 0 = Mulai aplikasi apa pun. SET StartOnlyIfKilled = 1 SET KillStatus = "% TEMP% KillStatus.tmp.txt" SET Success = 0 ECHO Membunuh instance% AppName% yang ada ... JIKA % KillIfRunning% == 1 CALL: CheckKillStatus "% ExeFile%" "MENJALANKAN "IF % KillIfNotResponding% == 1 CALL: CheckKillStatus"% ExeFile% "" NOT RESPONDING "IF % KillIfUnknownStatus% == 1 CALL: CheckKillStatus"% ExeFile% "" UNKNOWN "ECHO. IF % StartOnlyIfKilled% == 1 (IF % Success% == 0 GOTO End) ECHO Restarting% AppName% ... MULAI "% ExeFile%" "% ExePath %% ExeFile%" ECHO. JIKA ADA BUKA% KillStatus% DEL / F / Q% KillStatus% ENDLOCAL: CheckKillStatus ECHO Membunuh dengan status:% ~ 2 TASKKILL / FI "STATUS eq% ~ 2" / IM "% ~ 1" / F>% KillStatus% SET / P KillResult = <% KillStatus% FOR / F "tokens = 1, * delims =:" %% A IN ("% KillResult%") DO (ECHO %% A: %% B IF / I %% A == SUCCESS SET / A Success =% Success% + 1): Akhiri
Meskipun Anda dapat menemukan aplikasi di luar sana yang berfungsi pada dasarnya sama, menggunakan skrip sederhana seperti ini untuk menghindari "program lain" berjalan di latar belakang.