Priporočena, 2024

Izbira Urednika

Fix Scheduled Task se ne bo zagnal za datoteko .BAT

Če imate datoteko .BAT in jo poskušate samodejno zagnati s programom Task Scheduler v operacijskem sistemu Windows, ste morda naleteli na težavo, pri kateri preprosto ne deluje, razen če ročno opravite nalogo.

Ustvaril sem paketno datoteko, ki izbriše vse v mapi temp, ko se računalnik zažene. Ustvaril sem osnovno nalogo v Task Schedulerju in upal na najboljše. Na žalost se ni zgodilo nič, ko se je računalnik zagnal. Po veliko poskusov in napak, sem ugotovil, kako dobiti scenarij za zagon.

V tem članku vas bom popeljal skozi nastavitve in dovoljenja, ki jih morate prilagoditi, da bo vaša paketna datoteka zagnana brez ročnega posredovanja.

1. korak: Preverite dovoljenja za datoteke / mape

Prvi korak pri odpravljanju te težave je zagotovitev, da ima račun, ki ga uporabljate za zagon skripta v razporedu opravil, dovoljenja za poln nadzor v mapi, ki vsebuje skript, sam skript in vse mape / datoteke, ki jih skript dotakne, ko se izvaja.

Spodaj sem na primer ustvaril naslednji paketni paket:

 nastavite mapo = "C: mapa" cd / d%% za / F "delims =" %% i v ("dir / b") do (rmdir "%% i" / s / q || del "%) % i "/ s / q) 

Datoteko .BAT sem shranil v mapo »Dokumenti«. Pot je C: Uporabniško uporabniško ime Dokumenti . Šel sem na C: Uporabniško ime, z desno miškino tipko na mapo Dokumenti in kliknil na Lastnosti . Potem sem kliknil na zavihek Varnost .

Kot lahko vidite, je bil uporabniški račun Aseem izrecno dodan in je dobil dovoljenje za popoln nadzor . Zdaj morate narediti isto stvar za mapo, ki vsebuje skript in za sam scenarij. Ne predvidevajte le, da če imate dovoljenja za mapo, ki vsebuje scenarij, ste pripravljeni, ker niste. Nazadnje nastavite dovoljenja za vse datoteke in mape, s katerimi bo skript sodeloval.

V mojem primeru sem moral iti na C: test, z desno miškino tipko klikniti na to mapo in dodati svoj uporabniški račun z dovoljenji Full Control. To je nekako nadležno, da morate to storiti, vendar je to edini način, da dobite scenarij za zagon.

Opomba : Račun, ki se uporablja za zagon skripta, mora biti del lokalne skupine skrbnikov v računalniku. V mojem primeru je račun Aseem skrbniški račun in zato del lokalne skupine skrbnikov.

2. korak: Preverite nastavitve razporejevalnika opravil

Zdaj pa pojdimo na Task Scheduler in tam spremenite ustrezne nastavitve. Odprite Task Scheduler in poiščite svojo nalogo v razdelku Aktivna opravila . Navesti jih je treba po abecednem vrstnem redu.

Dvokliknite nanj in to nalogo bo sam odprl v istem oknu. Če želite urediti nalogo, jo kliknite z desno miškino tipko in izberite Lastnosti .

Obstaja več zavihkov in nekaj stvari je treba preveriti in spremeniti tukaj. Prvič, na zavihku Splošno morate preveriti uporabniški račun, ki se uporablja za izvajanje naloge. V mojem primeru je to račun Aseem, ki sem ga prej odobril v datotečnem sistemu in ki je del skupine skrbnikov v računalniku.

Nato morate izbrati možnost Zaženi, ali je uporabnik prijavljen ali ne in v oknu Konfiguriraj za Windows izberite Windows Vista, Windows Server 2008 .

Na zavihku Dejanja morate izbrati skript, klikniti Uredi in dodati pot v mapo, ki vsebuje skript, v polje Začni v (neobvezno) . To se morda zdi nepotrebno, vendar ni. V mojem primeru sem vpisal C: Uporabniki Izgled dokumentov v polju.

Zdaj kliknite V redu, da shranite nastavitve. Ko to storite, se lahko prikaže pogovorno okno, kjer morate vnesti geslo za uporabniški račun, ki bo izvajal nalogo. To prinaša še eno zahtevo. Računa, ki nima gesla, ne morete uporabljati. Uporabniški račun mora imeti geslo, da se opravilo izvede.

Nazadnje morate opravilo opraviti ročno enkrat v razporejevalniku opravil, da se prepričate, ali se izvaja. Če ročno teče po tem, ko ste spremenili vse nastavitve, se bo zagnal, ko naj bi se sprožil. V mojem primeru naj bi se to zgodilo ob zagonu in ko sem naredil spremembe, je vse delovalo dobro.

Upoštevajte, da če skript dostopa do različnih računalnikov v domeni, ko teče, poskusite uporabiti skrbniški račun domene, da opravite nalogo. To bo zagotovilo, da ima račun dovolj dovoljenj za dostop do oddaljenih računalnikov.

Drug element, ki ga morate upoštevati, je, če skript dostopa do virov v omrežnem omrežju. Če vaš skript uporablja črke za dostop do omrežja, se morda ne bo zagnal. Na primer, namesto z uporabo F: podatkov v skriptu uporabite \ t Če še vedno ne morete zagnati skripta, objavite komentar in poskušam pomagati. Uživajte!

Top