Aflați cum să creați o sarcină programată cu PowerShell

Practic fiecare administrator de sistem trebuie să se ocupe de sarcini programate. Acestea sunt incredibil de utile pentru a face ceva pe baza diverselor declanșatoare, dar necesită mult efort manual pentru a fi configurate corespunzător.

Beneficiul sarcinilor programate este că puteți construi una cu un nivel profund de sofisticare cu opțiuni de declanșare și diverse contexte de securitate. Dar acolo unde domnește complexitatea, pot apărea erori de configurare. Atunci când dezvoltați aceste scripturi de automatizare, puteți crea o sarcină programată cu PowerShell pentru a ușura procesul. Utilizarea PowerShell ajută la standardizarea activității de gestionare și configurare implicate de sarcinile programate complexe, ceea ce are avantajul suplimentar de a evita erorile obișnuite care rezultă din introducerea manuală.

Creați o acțiune de sarcină programată

Cel puțin, o sarcină programată are o acțiune, un declanșator și un grup de setări asociate. După ce creați sarcina, trebuie, de asemenea, să o înregistrați în sistem. Trebuie să efectuați fiecare acțiune separat pentru a crea o singură sarcină programată.

Pentru a crea acțiunea, utilizați cmdlet-ul New-ScheduledTaskAction care specifică comanda de executat. Haideți să creăm o acțiune care devine puțin meta și invocă un script PowerShell.

Comanda de mai jos oferă un exemplu de invocare a motorului PowerShell și de transmitere a unui script către acesta, folosind toate comutatoarele de linie de comandă corespunzătoare pentru a face ca scriptul să ruleze neinteractiv. Fișierul de script rezidă pe mașina pe care se va rula sarcina programată.

$Action = New-ScheduledTaskAction -Execute 'pwsh.exe' -Argument '-NonInteractive -NoLogo -NoProfile -File "C:\MyScript.ps1"'

Crearea unui declanșator

În continuare, aveți nevoie de un declanșator. Aveți la dispoziție mai multe valori, dar această sarcină va folosi o anumită oră – 3 a.m. – pentru a executa o singură dată acest script. Pentru o listă completă de opțiuni, consultați pagina de ajutor a cmdletului New-ScheduledTaskTrigger.

$Trigger = New-ScheduledTaskTrigger -Once -At 3am

Crearea setărilor

În continuare, creați sarcina programată utilizând comanda New-ScheduledTask. Această comandă necesită o valoare pentru parametrul Settings, chiar dacă nu folosiți niciunul special. Acesta este motivul pentru care executați New-ScheduledTaskSettingsSet pentru a crea un obiect pe care să îl treceți aici.

$Settings = New-ScheduledTaskSettingsSet

Creați sarcina programată

După ce ați atribuit toate obiectele ca variabile, treceți fiecare dintre aceste variabile la comanda New-ScheduledTask pentru a crea un obiect de sarcină programată.

$Task = New-ScheduledTask -Action $Action -Trigger $Trigger -Settings $Settings

Înregistrați sarcina programată

În acest punct, ați creat un obiect de sarcină programată în memorie. Pentru a adăuga sarcina programată pe computer, trebuie să înregistrați sarcina programată utilizând cmdlet Register-ScheduledTask.

Exemplul de mai jos înregistrează o sarcină programată pentru a se executa sub un anumit nume de utilizator. Pentru a rula sarcina în contextul unui anumit utilizator, trebuie să furnizați parola. Este util să consultați documentația pentru comanda Register-ScheduledTask pentru a vedea toate opțiunile de utilizat cu acest cmdlet.

Register-ScheduledTask -TaskName 'My PowerShell Script' -InputObject $Task -User 'username' -Password 'passhere'

Dacă ați urmat corect toți pașii, ar trebui să vedeți sarcina programată nou creată în Task Scheduler.

Setări sarcină programată
După ce ați creat o sarcină programată cu PowerShell, puteți deschide Task Scheduler pentru a vedea numele sarcinii, declanșatoarele sale și alte detalii.

După ce sarcina programată este înregistrată și apare în Task Scheduler, acum puteți rula cmdlet-ul Get-ScheduledTask pentru a vedea sarcina.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.