Skrip Batch untuk Memulai Ulang Aplikasi secara Kondisional

Daftar Isi:

Skrip Batch untuk Memulai Ulang Aplikasi secara Kondisional
Skrip Batch untuk Memulai Ulang Aplikasi secara Kondisional

Video: Skrip Batch untuk Memulai Ulang Aplikasi secara Kondisional

Video: Skrip Batch untuk Memulai Ulang Aplikasi secara Kondisional
Video: Tutorial Setting First Line Indent Microsoft Word Bisa Mempercepat Pekerjaan - YouTube 2024, November
Anonim

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:

  • Mudah memulai ulang aplikasi dengan mengklik dua kali atau menggunakan kunci panas.
  • Mulai ulang program hanya ketika digantung atau tidak merespons.
  • Jalankan sebagai tugas terjadwal untuk memastikan aplikasi selalu berjalan.
  • Di mana pun Anda ingin mengotomatiskan pengaktifan ulang aplikasi secara bersyarat.

Menyesuaikan skrip harus cukup jelas dengan komentar, jadi cukup konfigurasikan skrip dengan tepat dan Anda siap.

Naskah

@ECHO OFF ECHO Restart Application ECHO Written by: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Enter the application information. SET AppName=Application Name SET ExeFile=FileToLaunch.exe SET ExePath=C:PathToApplication REM Select the conditions to kill the application. REM A value of 1 = Yes, 0 = No SET KillIfRunning=1 SET KillIfNotResponding=1 SET KillIfUnknownStatus=1 REM Specify when to start the application: REM 1 = Start only if the process was previous killed. REM 0 = Start the application regardless. SET StartOnlyIfKilled=1 SET KillStatus='%TEMP%KillStatus.tmp.txt' SET Success=0 ECHO Killing existing %AppName% instance… IF {%KillIfRunning%}=={1} CALL:CheckKillStatus '%ExeFile%' 'RUNNING' 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%… START '%ExeFile%' '%ExePath%%ExeFile%' ECHO. IF EXIST %KillStatus% DEL /F /Q %KillStatus% ENDLOCAL:CheckKillStatus ECHO Killing with 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 ):End

Kesimpulan

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.

Direkomendasikan: