Much more from the source article itself ...... details or code stated above
http://therealshrimp.blogspot.in/2010/03/restarting-exchange-2010-services.html
Restarting All Running Services
http://www.zerohoursleep.com/2010/09/quick-tip-restarting-all-microsoft-exchange-services/
$services = Get-Service | ? { $_.name -like "MSExchange*" -and $_.Status -eq "Running"}
foreach ($service in $services) {Restart-Service $service.name -Force}
Script allows you to Start, Stop or Restart Exchange Server 2010 service (only in theses Automatic startup mode)
http://certcollection.org/forum/topic/108267-exchange-2010-services-script/
Automatically restart failed Exchange services using PowerShell
http://blogs.technet.com/b/daveh/archive/2008/12/21/automatically-restart-failed-exchange-services-using-powershell.aspx
参考脚本
$ignorePattern = '^(ShellHWDetection|MMCSS|sppsvc|clr_optimization.*)$';
Get-WmiObject Win32_Service
{
$_.StartMode -eq 'Auto' `
-and $_.State -ne 'Running' `
-and $_.Name -notmatch $ignorePattern
}
{
$svcName = $_.Name;
Restart-Service -Name $_.Name -EA SilentlyContinue;
}