PowerShell2.0之桌面计算机维护(五)管理桌面电源设置
来源:互联网 发布:落霞与孤鹜齐飞 知乎 编辑:程序博客网 时间:2024/04/29 03:58
便携式计算机的供电是个很重要的问题,因其直接关系到便携式设备的可移动性。Windows有多个组件与电源管理的配置策略相关,在Windows Server 2008中的电源策略设置界面如图1所示。
图1 Windows Server 2008中的电源策略设置界面
创建名为“ReportPowerConfig.ps1”的脚本,根据用户提供的如下参数提供相应的电源配置信息。
- a:当前主机中活动的电源设置。
- l:当前主机中的所有电源配置。
- q:当前主机中的所有可用休眠状态。
- w:当前主机中的上次唤醒事件。
- d:当前主机中的所有的设备。
- dv:当前主机中的所有设备的详细信息。
- dwa:当前主机中已配置且可唤醒当前主机的设备。
- dwp:当前主机中所有配置为可从睡眠中唤醒计算机的设备。
该脚本的代码如下:
param($a="a", $help)
function funline ($strIN)
{
$num = $strIN.length
for($i=1 ; $i -le $num ; $i++)
{ $funline += "=" }
Write-Host -ForegroundColor yellow `n$strIN
Write-Host -ForegroundColor darkYellow $funline
}
function funHelp()
{
$helpText=@"
DESCRIPTION:
NAME: ReportPowerConfig.ps1
Prints power config on a local machine.
PARAMETERS:
-a(ction) action to perform
q(uery), d(evice), dv(evice verbose),
dwa(evice wake armed), dwp(evice wake programable)>
-help prints help file
SYNTAX:
ReportPowerConfig.ps1
Lists power configuration on local computer
ReportPowerConfig.ps1 -a a
Lists active power configuration on local computer
ReportPowerConfig.ps1 -a l
Lists all power configuration on local computer
ReportPowerConfig.ps1 -a q
Lists all available sleep states on local computer
ReportPowerConfig.ps1 -a w
Lists last wake event on local computer
ReportPowerConfig.ps1 -a d
Lists all devices on local computer
ReportPowerConfig.ps1 -a dv
Lists all devices on local computer - verbose
ReportPowerConfig.ps1 -a dwa
Lists devices configured to wake the local computer
ReportPowerConfig.ps1 -a dwp
Lists devices that are user confiurable to wake the
computer from sleep on local computer
ReportPowerConfig.ps1 -help ?
Displays the help topic for the script
"@
$helpText
exit
}
if($help){funline("Obtaining help ...") ; funhelp }
$computer = (New-Object -ComObject WScript.Network).computername
funline("Power configuration on: $($computer)")
switch($a)
{
"a" { POWERCFG -GETACTIVESCHEME ; "`r"}
"l" { powercfg -LIST }
"q" { powercfg -AVAILABLESLEEPSTATES }
"w" { powercfg -lastwake }
"d" { powercfg -devicequery all_devices }
"dv" { powercfg -devicequery all_devices_verbose }
"dwa" { powercfg -devicequery wake_armed }
"dwp" { powercfg -devicequery wake_programmable }
}
在脚本中首先使用param语句定义了两个命令行参数-a和-help,-a指定脚本执行的操作,默认值为a;-help指定显示帮助信息,包括描述、参数及语法范例。要强调的是这个脚本无法在远程执行。
获取计算机名称时可以使用WScript.Network COM对象,并使用New-Object cmdlet创建该对象,然后提供-comobject参数。选择ComputerName属性,计算机名自动保存在$computer变量中。该脚本中的大部分的逻辑控制在switch语句中完成,这些语句通过判断命令行中的$a变量值选择相应的分支。如果值为a,则使用Powercfg工具获取当前电源计划。执行结果如图2和图3所示,可以看到当前计算机可以由网卡远程唤醒。需要强调的是由于Windows XP和Windows Server 2008的powercfg工具的工作环境不同,所以将-a参数的a或q选项传递给脚本使将会抛出“参数无效,键入"/?"得到帮助”的提示信息。
图2 列出当前系统中可用的电源计划
图3 获取可从睡眠中唤醒计算机的设备
作者: 付海军
出处:http://blog.csdn.net/fuhj02
版权:本文版权归作者和csdn共有
转载:欢迎转载,为了保存作者的创作热情,请按要求【转载】,谢谢
要求:未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
个人网站: http://txj.lzuer.com/
- PowerShell2.0之桌面计算机维护(五)管理桌面电源设置
- PowerShell2.0之桌面计算机维护(六)修改电源计划
- PowerShell2.0之桌面计算机维护(二)用户管理
- PowerShell2.0之桌面计算机维护(九)磁盘管理
- PowerShell2.0之桌面计算机维护(三)设置屏幕保护程序
- PowerShell2.0之桌面计算机维护(一)监控磁盘空间
- PowerShell2.0之桌面计算机维护(七)性能计数器
- PowerShell2.0之桌面计算机维护(八)关闭或重启远程计算机
- PowerShell2.0之桌面计算机维护(四)审核安全的屏幕保护程序
- PowerShell2.0之维护网络(一)查看网络设置
- PowerShell2.0之维护网络(一)查看网络设置
- PowerShell2.0之维护网络(三)设置网络适配器
- PowerShell2.0之维护网络(二)处理适配器配置
- 北航面试之计算机从按下电源键到出现桌面是怎样的过程(windows)
- 北航面试之计算机从按下电源键到出现桌面是怎样的过程(linux)
- PowerShell2.0之Windows排错(五)查看硬件问题
- 桌面管理
- 桌面维护故障
- 早晨从中午开始
- IE6、IE7环视应用中的一个bug
- SIP Miscellaneous Excerption-PRACK
- wine的使用方法
- 介绍seqChart工具
- PowerShell2.0之桌面计算机维护(五)管理桌面电源设置
- cmd 链接mysql
- MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题
- 位运算符
- 静态页面html之间传递中文参数出现乱码问题的解决方案
- 像蚂蚁一样工作,像蝴蝶一样生活
- GeoServer地图开发解决方案(一):环境搭建篇
- javascript试水
- mysql数据导出导入不出现乱码的几个前提条件