Powershell cistiga din ce in ce mai multa tractiune. Se foloseste in Exchange, SqlServer , VS2010 ( cu NuGet cu tot…). Vine default cu Windows 7 .
Asa ca am inceput si eu, usor usor, sa il folosesc.
Vreau sa scriu aici despre tratarea exceptiilor in scripturi . Dupa ce am scris codul si merge, pun un try/catch de forma:
TRY {
#cod:
}
catch [exception]
{
$eroare="eroare trimis email:" +$_.Exception.Message #am obtinut eroare
write-Host $eroare
$body = $eroare
$body += " Tip Eroare: " + $_.Exception.GetType().FullName
#obtine informatii despre computerul pe care s-a executat scriptul si despre numele scriptului
$Computer = get-content env:computername
$fullnamePC = $Computer + " " + $MyInvocation.MyCommand.Path
$body += " Anunt dat de :" + $fullnamePC
write-Host $body
#trimite email sau scrie in fisier
send-mailmessage -to "...." -from "..." -subject $eroare -body $body -bcc "............" -smtpserver "............";
}
Acum ca e clar, sa vedem ce puteti face cu el:
1. Are pluginuri(cmdlets ) de sql server si exchange. Default vine cu acces la registry, file system, event viewer si altele.
2.poate rula comenzi pe alte PC-uri
http://msdn.microsoft.com/en-us/library/ee706585%28VS.85%29.aspx
3. Are thread-uri:
start-job:
http://technet.microsoft.com/en-us/library/dd347692.aspx
PS : Nu uitati de signing – asta cu securitatea te omoara la inceput – dar ai tendinta sa o uiti:
Calea corecta : http://www.hanselman.com/blog/SigningPowerShellScripts.aspx
Calea usoara : Set-ExecutionPolicy Unrestricted
Calea medie : http://technet.microsoft.com/en-us/library/ee176949.aspx
Pentru cei care nu stiu, iata si o carte free: http://rkeithhill.wordpress.com/2009/03/08/effective-windows-powershell-the-free-ebook/