我有一個腳本,用於檢查不同服務器上的某些服務是否啓動,如果不啓動,腳本應啓動該服務。並行啓動服務
問題是,它不會並行啓動服務,而是等到每個服務啓動。
代碼:
$server_list = Get-Content -path D:\Path\list_of_servers.txt
$server_list | foreach {
(Get-Service -Name '*Service Name*' -computername $_) | Where-Object {$_.status -eq "Stopped"} | Set-Service -Status Running
}
我知道這是由於腳本編寫方式,但也許有些你有什麼建議,如何使它更好?
乾杯!
哪個版本Powershell你在跑嗎?有了V3和V4,你可以使用'foreach -parallel' – 2014-12-08 07:55:39
你用'Start-Job'看了嗎? – xXhRQ8sD2L7Z 2014-12-08 07:58:35
@MickyBalladelli不幸的是,我們正在使用V2 – user3782265 2014-12-08 08:29:40