Ich möchte "High Performance" -Powerplan auf mehreren Server-Rechnern einstellen. Ich habe das folgende Skript, das läuft gut, wenn ich dies auf den Servern nacheinander ausführen.Einstellen des Energiesparplans auf mehreren Servern mit Powershell
Set-Powerplan "High Performance"
function Set-PowerPlan {
[CmdletBinding(SupportsShouldProcess = $True)]
param (
[ValidateSet("High performance", "Balanced", "Power saver")]
[ValidateNotNullOrEmpty()]
[string] $PreferredPlan = "High Performance"
)
Write-Host "Setting power plan to `"$PreferredPlan`""
$guid = (Get-WmiObject -Class Win32_PowerPlan -Namespace root\cimv2\power -Filter "ElementName='$PreferredPlan'").InstanceID.ToString()
$regex = [regex]"{(.*?)}$"
$plan = $regex.Match($guid).groups[1].value
powercfg -S $plan
$Output = "Power plan set to "
$Output += "`"" + ((Get-WmiObject -Class Win32_PowerPlan -Namespace root\cimv2\power -Filter "IsActive='$True'").ElementName) + "`""
Write-Host $Output
}
Wie eine Liste der Server zu diesem Skript übergibt, so dass der Energieplan rekursiv auf allen Servern festgelegt ist? Bitte helfen Sie mir.