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/