我需要运行一个批处理文件,使用一系列的powercfg命令来复制当前活动的方案并重命名它。
手动操作时,我会在命令提示符下执行类似的操作。
powercfg -getactivescheme这将为我提供当前活动方案的GUID。
powercfg -duplicatescheme <GUID obtained above> <new GUID>理想情况下,我想做这样的事情...
powercfg -duplicatescheme -getactivescheme <new GUID>但既然这是不允许的,还有其他方法吗?
发布于 2009-07-23 19:01:34
首先,您需要从powercfg的输出中提取GUID。这可以使用for命令来完成:
for /f "tokens=2 delims=:(" %%x in ('powercfg -getactivescheme') do echo %%x这将仅输出GUID,您也可以将其保存在变量中:
for /f "tokens=2 delims=:(" %%x in ('powercfg -getactivescheme') do set guid=%%x您可能想从这里删除多余的空格(在这里,我在行的前面有一个空格,在行尾有另外两个空格:
set guid=%guid: =%现在您有了GUID,可以将其放入上面的命令行中:
powercfg -duplicatescheme %guid% <new GUID>你只需要想一个新的GUID。我不知道有什么包含的命令行程序可以为你生成一个命令行。
注意:这里的代码(尤其是for部分)假定您是在批处理文件中执行此操作的。为了直接在命令行上运行,您必须在for命令中使用%x而不是%%x。
https://stackoverflow.com/questions/1173291
复制相似问题