Tehtävien ajoitustoiminnon komentosarja - Miten

Tehtävien ajoitustoiminnon komentosarja

miten ajaa minkä tahansa ohjelman PowerShell-komentosarjan avulla ja suorita se käyttämällä tehtävän ajoitusta

5 vaihetta yhteensä

Vaihe 1: luo komentosarja

kirjoita powerhell-komentosarja, jos haluat käyttää ohjelmaa
Kirjoitin tämän palvelimien synkronoimiseksi syrjäisillä sivustoilla pääkonttorin datakeskuksen kanssa:

#custom script suorittaa syncback-ryhmän profiilin ja yhdistää yhdistetyt lokitiedostot

$ tänään = get-date -Format "yyddMM"
jos ([intptr] :: koko -eq 8) {
#OS on 64 bittiä
$ AppPath = "$ Env: Ohjelmatiedostot (x86) Takaisin"
}
muu {
#OS ei ole 64 bittiä
$ AppPath = "$ Env: Ohjelmatiedostot
}
$ Palvelinnimi = $ env: TietokoneenNimi
$ logname = $ tänään + "_" + $ palvelimen nimi + "_Synclog.log"

#next-komento on suoritettava vain kerran tämän komentosarjan ensimmäisessä käytössä
# new-EventLog -LogName -sovelluksen -lähteen SyncBack

cd $ AppPath
SyncBack.exe -m SyncData "| out-null
Write-EventLog -LogName -sovelluksen lähde SyncBack -eventid 1000 -tyyppinen tieto -viesti "SyncBack-prosessi päättyi"
gci "$ AppPath Sync * log.txt" Hanki sisältö lisää sisältöä "$ AppPath t

Send-MailMessage -To '[email protected]' - '[email protected]' -SmtpServer 'mailserver' -Subject 'Synkronointitehtävä $ ServerName -sovelluksessa' -Body 'on liitetiedostossa synkronointilokitiedosto' -Asiat $ logname

Vaihe 2: muokkaa komentosarjaa tarpeisiisi

Muista, että tämä käsikirjoitus on meneillään oleva työ
sinun täytyy muuttaa joitakin muuttujia, kuten esimerkiksi lähettämäsi sähköpostiosoite

myös, jos olet perehtynyt syncbackiin, tiedät, miten kutsutun profiilin nimi ja niiden lokitiedostot otetaan huomioon

out-nullille lähetetty kutsunilmaisukomento varmistaa, että komentosarja odottaa, kunnes prosessi on päättynyt
Voit myös siirtää kutsutun komennon lähdön tekstitiedostoon tai jopa muuttujaan, jos haluat käyttää sitä tulevaa käyttöä varten komentosarjan aikana

kirjoitus-tapahtumaloki on mukava olla, joten voit kirjoittaa komennon tuotoksen tai oman kuvauksen palvelimen tapahtumalokiin
sinun on rekisteröitävä merkintä ensin uuden tapahtumalokin komennolla

Minun on vielä toteutettava jos sitten lohko, jotta voin lähettää menestyksen tai epäonnistumisen tapahtumalokiin
tämä on erityisen kätevä, koska käytämme System Centeriä kaikkien palvelimien seurantaan
näin voin käynnistää hälytyksen, jos tällainen tehtävä epäonnistuu

Vaihe 3: Powershell Execution Policy

varmista, että muutat toteutuspolitiikkaa muokkaamattomiksi tai skriptiäsi ei näytetä, jos kopioidaan toisesta tietokoneesta ja saat seuraavan virheen:

Tiedosto C: Windows SyncData.ps1: tä ei voi ladata, koska komentosarjojen suorittaminen on poistettu käytöstä tässä järjestelmässä. Katso lisätietoja kohdasta "get-help about_signing".

kirjoita set-execpolicy muokattavaksi ja vahvista vastaamalla Kyllä

Vaihe 4: aikatauluta valtuuskirjoitus

tämä on komentorivipuhelu powerhell-skriptille:

C: WINDOWS system32 WindowsPowerShell v.0.0 powerhell.exe -käyttö "&" c: ikkunat SyncData.ps1 '"

Windows-kansio on yleensä tunnettu polku, joten sinun ei tarvitse määrittää täyttä polkua, minkä vuoksi käytän sitä, mutta voit käyttää mitä tahansa muuta kansiota, kun haluat määrittää skriptin koko polun

Vaihe 5: synkronointispesifiset asetukset

jos soitat syncbackiin, sinun on käytettävä samaa tiliä, kun suoritat tehtävän, kuten profiileja luodessasi

syncback tallentaa nämä profiiliasetukset käyttäjärekisteriin, joten muiden tilien käyttäminen ei pysty lukemaan näitä asetuksia ja epäonnistuu suorittamisen yhteydessä

helpoin tapa on kirjautua palvelimeen järjestelmänvalvojan tilillä, luoda profiileja ja syöttää nämä tiedot tehtävän suorittamiseen

vaihtoehtona voit myös tuoda nämä asetukset käyttäjätilin rekisteriin, jota haluat käyttää ajoitetussa tehtävässä

tämä on vain, jos haluat näyttää, miten voisit käyttää valtuuksia INVOKE: n kanssa mihin tahansa ohjelmaan, jonka haluat aikatauluttaa tehtävänä

syy, miksi siirryin käyttämään powerhellia itse ohjelman kutsumisen sijaan, on se, että voin yhdistää useita suoritettavia ohjelmia peräkkäin vain yhden aikataulun avulla
putken ulostulon käyttäminen varmistaa, että ensimmäinen ohjelma on suoritettu ennen seuraavan ohjelman kutsumista

tässä tapauksessa oli mukavaa pystyä yhdistämään lokitiedostot yhdeksi suureksi tiedostoksi ja lähettämään se seurattuun postilaatikkoon