我正在使用Powershell脚本来自动化Windows 10迁移的部署方法的某些过程。该脚本的一部分使用powercfg激活“高性能电源计划”选项。在我们使用的已经存在/创建了三个普通计划(平衡/惠普/省电)的台式机上,它可以正常工作,但是我测试的笔记本电脑在“选择电源计划”菜单中仅显示“平衡”。 / p>
通常,我将通过GUI单击“创建电源计划”,这会问我是否要以现有计划为基础。在这里,我可以单击“高性能计划”模板,然后将其命名为“高性能”并以这种方式使用。我正在寻找一种在Powershell脚本中执行此操作的方法,以便可以在笔记本电脑和台式机上同时运行此脚本。
这是我要在已经创建了HP电源计划的机器上将电源计划更改为“高性能”的条件,并且在“选择...”菜单中(由SQL Soldier提供):
Try {
$HighPerf = powercfg -l | %{if($_.contains("High performance")) {$_.split()[3]}}
$CurrPlan = $(powercfg -getactivescheme).split()[3]
if ($CurrPlan -ne $HighPerf) {powercfg -setactive $HighPerf}
Write-Host "Power plan has been configured to High performance."
}
Catch {
Write-Warning -Message "Unable to set power plan to high performance"
}
我有一个名为$ Laptop的变量,当-eq等于“ y”或“ Yes”时,我会在脚本中执行其他操作,因此我想将此代码包装在基于$ Laptop的if语句中,该语句将创建如果计算机是笔记本电脑,则电源计划将其激活,否则请正常执行上述代码。我意识到这段代码并不是很固定,但是我们实际上只选择了少数几个模型,因此我并不想使其变得万无一失。
请让我知道是否可以澄清任何事情。