PowerShell: Vadim Vinogradin, Ping skript

From ICO wiki
Jump to navigationJump to search

PowerShell ping skript

  1. Esimene väike väike skript loob scheduled task, mis uuendab iga tunni jooksul ja käivitab pingskript.ps1
  2. Teine skript kontrollib, saidi IP-aadressi töötamine. Kui töötab, siis kirjutab andmeid C:\ping.txt failisse, kui ei tööta, siis kirjutab andmeid C:\ping.txt failisse ja teavitab e-maili kaudu.


shtask.ps1

#See väike skript loob scheduled task, mis uuendab iga tunni jooksul ja käivitab pingskript.ps1
start-process PowerShell.exe -arg $pwd\Desktop\pingskript.ps1 -WindowStyle Hidden 
schtasks.exe /Create /TN v2rskendaja /SC MINUTE /MO 60 /TR "PowerShell.exe -file $pwd\Desktop\pingskript.ps1 -WindowStyle Hidden -NoLogo -NonInteractive"

pingskript.ps1

#Autor: Vadim Vinogradin A21, vvinogra@itcollege.ee
#Versioon: 0.3
#Skript, mis kontrollib, saidi IP-aadressi töötamine. 
#Kui töötab, siis kirjutab andmeid C:\ping.txt failisse, kui ei tööta, siis  kirjutab andmeid C:\ping.txt failisse ja teavitab e-maili kaudu.
$ipaadress="193.40.194.205"
$pingimine = New-Object System.Net.NetworkInformation.Ping
$date=date
$tulemus = $pingimine.send($ipaadress)
if ($tulemus.status.tostring() -eq "Success") { Write-Host Saan pingida $ipaadress }
else { Write-Host "Ei saa pingida $ipaadress"
#Siia tuleb kirjutada oma e-mailiga seotud andmed
$MessageParameters = @{
From = "username@mail.com"
To = "username@mail.com"
Subject = "Ping ei toota! Vaata C:\ping.txt faili"
Body = "Vaata faili"
#SmtpServer igal interneti pakkujal on oma, siis kui on vaja - tuleb muuta
SmtpServer = "mail.starman.ee"
}
Send-MailMessage @MessageParameters
}

echo "$date" >> C:\ping.txt
echo "$ipaadress" >> C:\ping.txt
if ($True) { ping $ipaadress >> C:\ping.txt }
echo "------------------------------------------------------------------------------------------------" >> C:\ping.txt