Partijas skripts, lai nosacīti atjaunotu lietojumprogrammu
Parastie sistēmas un / vai vides notikumi, piemēram, atsākšana no gaidīšanas režīma vai tīkla savienojuma zaudēšanas, var radīt problēmas atsevišķām lietojumprogrammām, kas, domājams, vienmēr būs ieslēgtas un savienotas. Tātad, ja jums ir noteikta lietojumprogramma, kas bieži atteicas vai ieslēdzas režīmā, kas nereaģē, un restartēšana ir vienīgais labojums, mums ir vienkāršs labojums, lai pielāgotu partijas skriptu, lai vienkārši nogalinātu lietojumprogrammu un restartējiet to.
Papildus iepriekš minētajai acīmredzamai situācijai šo skriptu var izmantot dažādiem noderīgiem uzdevumiem, piemēram:
- Viegli restartējiet programmu, veicot dubultklikšķi vai izmantojot karsto taustiņu.
- Restartējiet programmu tikai tad, ja tā ir pakārtota vai neatbild.
- Palaist kā plānotu uzdevumu, lai pārliecinātos, ka lietojumprogramma vienmēr darbojas.
- Citur, kur vēlaties automatizēt programmas nosacītu atsākšanu.
Skripta pielāgošanai vajadzētu būt diezgan pašsaprotamai ar komentāriem, tāpēc vienkārši konfigurējiet skriptu atbilstoši un jūs visi esat iestatījuši.
Scenārijs
@ECHO OFF ECHO Restartējiet lietojumprogrammu ECHO Rakstīja: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Ievadiet lietojumprogrammas informāciju. SET AppName = Lietojumprogrammas nosaukums SET ExeFile = FileToLaunch.exe SET ExePath = C: PathToApplication REM Atlasiet nosacījumus, lai nogalinātu programmu. REM A vērtība 1 = Jā, 0 = Nē SET KillIfRunning = 1 SET KillIfNotResponding = 1 SET KillIfUnknownStatus = 1 REM Norādiet, kad sākt lietot: REM 1 = Sākt tikai tad, ja process tika iepriekš nogalināts. REM 0 = Sākt lietotni neatkarīgi. SET StartOnlyIfKilled = 1 SET KillStatus = "% TEMP% KillStatus.tmp.txt" SET Success = 0 ECHO nogalināšana esošajā% AppName% instance… IF % KillIfRunning% == 1 CALL: CheckKillStatus "% ExeFile%" "RUNNING "IF % KillIfNotResponding% == 1 CALL: CheckKillStatus"% ExeFile% "" NOT RESPONDING "IF % KillIfUnknownStatus% == 1 CALL: CheckKillStatus"% ExeFile% "" Nezināms "ECHO. IF % StartOnlyIfKilled% == 1 (JA % Success% == 0 GOTO beigas) ECHO restartēšana% AppName%… START "% ExeFile%" "% ExePath %% ExeFile%" ECHO. IF EXIST% KillStatus% DEL / F / Q% KillStatus% ENDLOCAL: CheckKillStatus ECHO nogalināšana ar statusu:% ~ 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
Secinājums
Kaut arī jūs varat atrast lietojumprogrammas, kas veic būtībā tādu pašu funkciju, izmantojot vienkāršu skriptu, piemēram, tas novērš, ka fonā darbojas „vēl viena programma”.