[TOC]
0.系统配置
w32tm 命令 - 系统时间同步设置
描述: Windows Time服务维护在网络上的所有客户端和服务器的时间和日期同步,而W32tm命令是设置windows操作系统时间同步与时间监控。
Tips: 注意使用该命令前请必须启动w32tm服务(start-service w32tm /force
)。
语法参数
代码语言:javascript复制w32tm [/? | /register | /unregister ]
register - 注册为作为服务运行并且添加默认配置到注册表。
unregister - 解除服务注册并删除所有配置来自注册表的信息。
w32tm /monitor [/domain:<domain name>]
[/computers:<name>[,<name>[,<name>...]]]
[/threads:<num>] [/ipprotocol:<4|6>] [/nowarn]
domain - 指定要监视的域。如果没有指定域名,或者没有指定域或者计算机选项,将使用默认域。此选项可以多次使用。
computers - 监视给定的计算机列表。计算机名称由逗号分隔,没有空格。如果名称有前缀 '*',它将被视为一个 AD PDC。此选项可以多次使用。
threads - 同时分析的计算机数量。默认值为 3。允许的范围是 1-50。
ipprotocol - 指定要使用的 IP 协议。默认为使用任何可用的。
nowarn - 跳过警告消息。
w32tm /ntte <NT time epoch>
从 1601 年 1 月 1 日零时起,以(10^-7)秒为间隔,将 NT 系统时间转换为可读的格式。
w32tm /ntpte <NTP time epoch>
从 1900 年 1 月 1 日零时起,以(2^-32)秒为间隔,将 NTP 时间转换为可读的格式。
w32tm /resync [/computer:<computer>] [/nowait] [/rediscover] [/soft]
# 指示计算机应尽快重新同步它的时钟,以丢弃所有累计的错误统计信息。
computer:<computer> - 应重新同步的计算机。如果未指定,本地计算机将重新同步。
nowait - 不等待进行重新同步;立即返回。否则,在返回之前等待重新同步完成。
rediscover - 重新检测网络配置并重新发现网络来源,然后重新同步。
soft - 使用现有的错误统计信息重新同步。不是很有用,这只是为了保持兼容而提供的。
w32tm /stripchart /computer:<target> [/period:<refresh>]
[/dataonly] [/samples:<count>] [/packetinfo] [/ipprotocol:<4|6>] [/rdtsc]
# 显示此计算机和另一个计算机之间偏移量的带状图。
computer:<target> - 测量偏移量时作为参照的计算机。
period:<refresh> - 样本之间的时间(以秒为单位),默认值为 2 秒
dataonly - 仅显示数据,而不显示图形。
samples:<count> - 收集 <count> 个样本,然后停止,如果未指定,将一直收集样本,直到按下 Ctrl-C。
packetinfo - 输出 NTP 数据包响应消息。
ipprotocol - 指定要使用的 IP 协议。默认设置为使用任何可用的协议。
rdtsc - 使用 CSV 格式显示 TSC 值和时区偏移数据。
输出显示发送 NTP 请求前捕获的 TSC 和 FILETIME 值,收到 NTP 响应后捕获的 TSC 值,以及 NTP 往返延迟和时间偏移值。
w32tm /config [/computer:<target>] [/update]
[/manualpeerlist:<peers>] [/syncfromflags:<source>]
[/LocalClockDispersion:<seconds>]
[/reliable:(YES|NO)]
[/largephaseoffset:<milliseconds>]
computer:<target> - 调整 <target> 配置。如果未指定,默认设置为本地计算机。
update - 通知时间服务配置已更改, 以使更改生效。
manualpeerlist:<peers> - 将手动对等机列表设置为 <peers>,这是以空格分隔的 DNS 和/或 IP 地址列表。如果指定多个对等机,必须用引号 将此开关引起来。
syncfromflags:<source> - 设置应该与 NTP 客户端步的来源。<source> 应该是以逗号分隔的这些关键字的列表 (不区分大小写):
MANUAL - 从手动对等机列表中的对等机同步
DOMHIER - 从域层次结构中的一个 AD DC 同步
NO - 不从任何对等机同步
ALL - 从手动和域对等机同步
LocalClockDispersion:<seconds> - 配置内部时钟的精确性。如果 w32time 无法从其配置的来源获取时间,则它使用内部时钟。
reliable:(YES|NO) - 设置此计算机是否为可靠的时间来源。此设置仅对域控制器有意义。
YES - 此计算机提供可靠的时间服务
NO - 此计算机不提供可靠的时间服务
largephaseoffset:<milliseconds> - 设置本地和网络时间之间的差值, w32time 将其视为一个峰值。
w32tm /tz 显示当前时区设置。
w32tm /dumpreg [/subkey:<key>] [/computer:<target>] 显示与给定注册表项关联的值。
# 默认注册表项为 `HKLMSystemCurrentControlSetServicesW32Time` (时间服务的根注册表项)。
subkey:<key> - 显示与默认项的子项 <key> 关联的值。
computer:<target> - 查询计算机 <target> 的注册表设置。
w32tm /query [/computer:<target>] {/source | /configuration | /peers | /status}[/verbose]
# 显示计算机的 Windows 时间服务信息。#
computer:<target> - 查询 <target> 的信息。如果未指定,则默认设置为本地计算机。
source: 显示时间来源。
configuration: 显示运行时间配置和设置的来源。在详细模式下,还会显示未定义 或未使用的设置。
peers: 显示对等机的列表及其状态。
status: 显示 Windows 时间服务状态。
verbose: 设置详细模式以显示详细信息。
w32tm /debug {/disable | {/enable /file:<name> /size:<bytes> /entries:<value>[/truncate]}}
# 启用或禁用本地计算机的 Windows 时间服务专用日志。
disable: 禁用专用日志。
enable: 启用专用日志。
file:<name> - 指定绝对文件名。
size:<bytes> - 指定循环日志记录的最大值。
entries:<value> - 包含指定应记录的信息类型的标记列表,这些标记是使用数字指定的(以逗号分隔)。
有效数字为 0 到 300。除了单个数字以外,数字范围也是有效的,例如,0-100、103 或 106。 值 0-300 表示记录所有信息。
truncate: 截断文件(如果存在)。
w32tm /leapseconds /getstatus [/verbose]
# 显示本地计算机上的闰秒状态。
详细: 设置详细模式以显示更多信息。
简单使用:
代码语言:javascript复制# 1.设置多个对等机(NTP服务器)并使用使用基于 MinPollInterval、MaxPollInterval 的内置轮询间隔调整
w32tm /config /syncfromflags:MANUAL /manualpeerlist:"192.168.12.254,0x08 192.168.10.254,0x08" /update
# 2时间同步
w32tm /resync /rediscover
# 3.查询当前系统设置的NTP服务器,显示其对等机的列表及其状态。
w32tm /query /peers
#对等数: 1
# 对等: ntp.aliyun.com,0x08
# 状态: 运行中
# 剩余时间: 148.5722000s
# 模式:3 (客户端)
# 层次: 0 (未指定)
# 对等机轮询间隔: 0 (未指)
# 4.w32tm /tz
# 时区: 当前:TIME_ZONE_ID_UNKNOWN 偏量: -480分 (UTC=本地时间 Bias)
# [标准名称:"中国标准时间" 偏量:0分 日期:(未指定)]
# [夏时制名称:"中国夏令时" 偏量:-60分 日期:(未指定)]
# 5.
w32tm /leapseconds /getstatus
# [闰秒]
# 已启用: 1 (本地)
# 闰秒数(2018 年 6 月之后): 0 (本地)
入坑&出坑 问题1.运行”w32tm /resync”命令以将 Windows Server 2003 或 Windows SBS 同步到外部时间源时出现错误消息:”由于没有可用的时间数据,计算机未重新同步”
- 问题排查: 如果运行
w32tm /config /syncfromflags:manual
命令或w32tm /config/manualpeerlist:peerlist
命令确定是否Windows配置正确,则命令成功完成。 - 问题原因: 如果时间服务对象的组策略Windows配置不正确,则会出现此问题。 参考连接: https://docs.microsoft.com/zh-cn/troubleshoot/windows-server/identity/error-message-run-w32tm-resync-no-time-data-available
问题2.W32Time 同步工作组计算机上可能会忽略 SpecialPollInterval.
问题原因: 由于时间服务处理Windows SpecialPollInterval 值的方式,因此从 NTP 服务器同步的时间时间间隔可能超过预期。
解决办法1: 指定比默认值更小的 SpecialPollInterval 值。 默认值如下所示:
代码语言:javascript复制MinPollInterval = 0xA (== 2^10 秒 == 1024 秒)
MaxPollInterval = 0xF (== 2^15 秒 == 32768 秒)
SpecialPollInterval = 604800 秒
指定一个介于 MinPollInterval 和 MaxPollInterval 之间的 SpecialPollInterval 值。 示例值为 3600 秒, (== 1 小时) , 若要使用新设置配置 W32time,请按照以下步骤操作:
代码语言:javascript复制# 1.启动注册表编辑器。
# 2.更改以下注册表项的值:
HKEY_LOCAL_MACHINE SYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient
值名称:SpecialPollInterval
默认值:604800
修改值:3600
# 3.重新启动Windows服务,或运行以下命令向 W32time 发送有关修改的配置的信号:
w32tm /config /update
解决办法1: 使用基于 MinPollInterval、MaxPollInterval 的内置轮询间隔调整,而不是使用 SpecialPollInterval。
代码语言:javascript复制# 如果客户端计算机保持相当准确的时间,则此内置工具自动将轮询间隔从 MinPollInterval 一直调整到 MaxPollInterval。 您只需要修改 NtpServer 配置中的标志,以便从 SpecialPollInterval 切换到自动轮询间隔,
# 1.启动注册表编辑器。
# 2.更改以下注册表项的值:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters
值名称:NtpServer
默认值 time.windows.com,0x9
修改后的值 time.windows.com,0x8
# 3.重新启动 Windows Time 服务,或运行以下命令:
w32tm /config /update
1.系统设备驱动
mode 命令
描述:MODE命令配置系统设备更改CMD配置
基础语法:
代码语言:javascript复制串行端口: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]
[to=on|off] [xon=on|off] [odsr=on|off]
[octs=on|off] [dtr=on|off|hs]
[rts=on|off|hs|tg] [idsr=on|off]
设备状态: MODE [device] [/STATUS]
打印重定向: MODE LPTn[:]=COMm[:]
选择代码页: MODE CON[:] CP SELECT=yyy
代码页状态: MODE CON[:] CP [/STATUS]
显示模式: MODE CON[:] [COLS=c] [LINES=n]
击键率: MODE CON[:] [RATE=r DELAY=d]
基础实例:
代码语言:javascript复制#1.运行mode来获取设备状态.
>mode
设备状态 LPT1:
----------
未重新路由打印机输出结果
设备状态 COM1:
----------
波特率: 1200
奇偶校验: None
数据位: 7
停止位: 1
超时: OFF
XON/XOFF: OFF
CTS 握手: OFF
DSR 握手: OFF
DSR 敏感度: OFF
DTR 电路: ON
RTS 电路: ON
设备状态 CON:
---------
行: 300
列: 80
键盘速度: 31
键盘延迟: 1
代码页: 936
#2.也可以显示指定的设备状态
mode CON /status
#3.设置代码页
mode con cp SELECT=437
#4.重点设置CMD窗口大小,行数Lines:30,列数Columns:1024
>mode con: cols=1024 lines=30
WeiyiGeek.
DriverQuery命令
描述:新增的cmd命令,允许管理员显示已安装设备驱动程序的列表。 基础语法:
代码语言:javascript复制DRIVERQUERY [/S system [/U username [/P [password]]]]
[/FO format] [/NH] [/SI] [/V]
#参数:
/FO format 指定要显示的结果类型。与命令行开关一起传递的有效值是 "TABLE"、"LIST"、" CSV"。
/NH 指定“列标题”不应该在屏幕输出中出现。只对 "TABLE" 和 "CSV" 格式有效。
/SI 提供有关已签名驱动程序的信息。
/V 显示详细任务输出,对签名的驱动程序无效。
#基础示例
DRIVERQUERY
DRIVERQUERY /FO CSV /SI
DRIVERQUERY /NH #NH只对只对 "TABLE" 和 "CSV" 格式有效
DRIVERQUERY /S ipaddress /U user /V
DRIVERQUERY /S system /U domainuser /P password /FO LIST
WeiyiGeek.
代码语言:javascript复制driverquery /FO LIST /SI | MORE # 验证签名
driverquery | findstr "2017" # 模块名,显示名称和驱动类型和安装时间
WeiyiGeek.
2.系统控制设置
bootcfg命令
简述: BOOTCFG 命令设置 boot.ini 文件的属性 描述: bootcfg 命令是一个 Microsoft Windows XP 故障恢复控制台命令,可以用来处理BOOT.INI 文件中配置,查询,更改或删除启动项目设置。
此命令具有这样的功能:在硬盘上扫描 Microsoft Windows NT、Microsoft Windows 2000和 Windows XP 安装,然后将这些安装添加到现有的 Boot.ini 文件中,如果 Boot.ini 文件不存在,则重新生成一个新的 Boot.ini 文件,bootcfg 命令使其他 Boot.ini 文件参数能够添加到现有项或新项中。
参数列表:
代码语言:javascript复制/Addsw 允许用户添加预定义开关
/Rmsw 允许用户删除预定义开关
/Debug 允许用户为远程调试指定端口和波特率
ON|OFF|EDIT 指定用于 1394 端口调试的值;
#ON 通过将 /dbg1394 开关添加到指定的 OSEntryLineNum,从而启用远程调试支持
#OFF 通过将 /dbg1394 开关从指定的 OSEntryLineNum 删除,从而禁用远程调试支持
#EDIT 通过更改与指定 OSEntryLineNum 的 /dbg1394 开关有关的信道值,从而允许端口和波特率设置发生变化
/Dbg1394 允许用户为调试配置 1394 端口
#/port {COM1|COM2|COM3|COM4} 指定用于调试的 COM 端口。如果调试被禁用,则不要使用 /port 参数
#/baud {9600|19200|38400|57600|115200} 指定用于调试的波特率。如果禁用调试,则不要使用 /baud 参数 9600
/Copy 生成一个现有的启动项目的副本
/Delete 从 BOOT.INI 文件删除现有启动项目
/Query 显示当前启动项目和它们的设置
/Raw 允许用户指定要添加的任何开关
/Timeout 允许用户更改超时值
/Default 允许用户更改默认启动项目
/EMS 允许用户为无头支持配置 /redirect 开关
#参数:
/s Computer 指定远程计算机名称或 IP 地址(不能使用反斜杠),默认值是本地计算机。
/u DomainUser 对于由 user 或 domainuser 指定的用户,运行具有其帐户权限的命令。默认值是当前登录发布命令的计算机的用户权限。
/p Password 指定用户帐户的密码,该用户帐户在 /u 参数中指定。
/mm MaximumRAM 将 /maxmem 开关添加到指定的 OSEntryLineNum,并且设置操作系统可以使用的最大内存数
/bv 将 /basevideo 开关添加到指定的 OSEntryLineNum,从而控制操作系统使用已安装视频驱动器的标准 VGA 模式
/so 将 /sos 开关添加到指定的 OSEntryLineNum,从而控制操作系统在设备驱动程序名称加载时显示它们
/ng 将 /noguiboot 开关添加到指定的 OSEntryLineNum,从而禁用在 CTRL ALT DEL 登录提示之前显示的 Windows XP Professional 进度栏
/id OSEntryLineNum 对于添加有操作系统加载项的 Boot.ini 文件,指定其 [operating systems] 区段中的操作系统项的行号,[operating systems] 标题区域后的首行是 1
/d description 为新的操作系统项指定说明
/ch channel 指定用于调试的信道:有效值为 1 到 64 之间的某个整数。如果禁用 1394 端口调试,则不要使用 /ch channel 参数。
命令详解:
代码语言:javascript复制#1.为指定的操作系统条目增加一个启动项
bootcfg addsw
#语法:
bootcfg /addsw [/s Computer [/u DomainUser /p Password]] [/mm MaximumRAM] [/bv] [/so] [/ng] /id OSEntryLineNum
#下述范例显示了如何使用 bootcfg /addsw 命令:
bootcfg /addsw /mm 64 /id 2
bootcfg /addsw /so /id 3
bootcfg /addsw /so /ng /s srvmain /u hiropln /id 2
bootcfg /addsw /ng /id 2
bootcfg /addsw /mm 96 /ng /s srvmain /u maindomhiropln /p p@ssW23 /id 2
代码语言:javascript复制#2.创建另一个系统实例,制作另外的操作系统实例副本,可为其添加开关。
bootcfg copy
#语法:
bootcfg /copy [/s Computer [/u DomainUser /p Password]] [/d Description] [/id OSEntryLineNum]
#下述范例显示了如何使用 bootcfg /copy 命令:
bootcfg /copy /d "ABC Server" /id 1
bootcfg /copy /s srvmain /u maindomhiropln /p p@ssW23 /d "Windows XP" /id 2
bootcfg /copy /u hiropln /p p@ssW23 /d "AB Ver 1.001" /id 2
代码语言:javascript复制#3.为指定的操作系统项配置 1394 端口调试。
bootcfg dbg1394
#语法:
bootcfg /dbg1394 {ON|OFF|EDIT} [/s Computer [/u DomainUser /p Password]] [/ch channel] /id OSEntryLineNum
#下述范例显示了如何使用 bootcfg /dbg1394 命令:
bootcfg /dbg1394 /id 2
bootcfg /dbg1394 on /ch 1 /id 3
bootcfg /dbg1394 edit /ch 8 /id 2
bootcfg /s srvmain /u maindomhiropln /p p@ssW23 /dbg1394 off /id 2
代码语言:javascript复制#4.对指定系统增加调试
bootcfg debug
#语法
bootcfg /debug {ON|OFF|EDIT} [/s Computer [/u DomainUser /p Password]] [/port {COM1|COM2|COM3|COM4}] [/baud {9600|19200|38400|57600|115200}] [/id OSEntryLineNum]
#下述范例显示了如何使用 bootcfg /debug 命令:
bootcfg /debug on /port com1 /id 2
bootcfg /debug edit /port com2 /baud 19200 /id 2
bootcfg /s srvmain /u maindomhiropln /p p@ssW23 /debug off /id 2
代码语言:javascript复制#5.#指定默认启动的条目
bootcfg default
#语法
bootcfg /default [/s Computer [/u DomainUser /p Password]] [/id OSEntryLineNum]
#下述范例显示了如何使用 bootcfg /default 命令:
bootcfg /default /id 2
bootcfg /default /s srvmain /u maindomhiropln /p p@ssW23 /id 2
代码语言:javascript复制#6.#在Boot.ini的[operating systems]节中删除指定项目
bootcfg delete
#语法:
bootcfg /delete [/s Computer [/u DomainUser /p Password]] [/id OSEntryLineNum]
#下述范例显示了如何使用 bootcfg /delete 命令:
bootcfg /delete /id 1
bootcfg /delete /s srvmain /u maindomhiropln /p p@ssW23 /id 3
代码语言:javascript复制#7.#允许用户添加或改变重定向EMS控制台到一台远程计算机
在boot.ini中的[boot loader]节添加"redirect=Port#"行,以及对指定的操作系统添加/redirect开关。
bootcfg ems
#语法:
bootcfg /ems {ON|OFF|EDIT} [/s Computer [/u DomainUser /p Password]] [/port {COM1|COM2|COM3|COM4|BIOSSET}] [/baud {9600|19200|38400|57600|115200}] [/id OSEntryLineNum]
#参数:
on | off 指定用于 EMS 重定向的值
ON 为指定的 OSEntryLineNum 启用远程输出。将 /redirect 开关添加到指定 OSEntryLineNum,并且将 redirect=comX 设置添加到 [boot loader] 区段,comX 的值由 /port 参数设置
OFF 禁用输出到远程计算机。将 /redirect 开关从指定 OSEntryLineNum 删除,并将 redirect=comX 设置从 [boot loader] 区段删除
EDIT 允许通过更改 [boot loader] 区段中的 redirect=comX 设置来更改端口设置,comX 值恢复为 /port 参数所指定的值
/port {COM1|COM2|COM3|COM4|BIOSSET} 指定用于重定向的 COM 端口。BIOSSET 控制 EMS 获得 BIOS 设置以确定用于重定向的端口。如果禁用了远程管理输出,请不要使用 /port 参数
# 注释:有关紧急管理服务 (EMS) 的详细信息,请参阅“帮助和支持中心”。
# 范例:下述范例显示了如何使用 bootcfg /ems 命令:
bootcfg /ems on /port com1 /baud 19200 /id 2
bootcfg /ems on /port biosset /id 3
bootcfg /s srvmain /ems off /id 2
bootcfg /ems edit /port com2 /baud 115200
bootcfg /s srvmain /u maindomhiropln /p p@ssW23 /ems off /id 2
代码语言:javascript复制#8.#查询并显示[boot loader] 和[operating systems]节
bootcfg query
#语法
bootcfg /query [/s Computer [/u DomainUser /p Password]]
#以下是 bootcfg /query 输出的一个示例:
启动加载程序设置
timeout: 30
default:multi(0)disk(0)rdisk(0)partition(1)WINDOWS
启动项 ID、友好名、路径以及 OS 加载项
启动项目 ID: 1
好记的名称:"Microsoft Windows XP Professional"
路径:multi(0)disk(0)rdisk(0)partition(1)WINDOWS
OS 加载选项:/fastdetect /debug /debugport=com1:
该 bootcfg query 输出的启动加载程序设置部分显示了 Boot.ini 的 [boot loader] 区段中的所有项。
该 bootcfg query 输出的启动项部分显示了 Boot.ini 的 [operating systems] 区段中的这些操作系统项:
下述范例显示了如何使用 bootcfg /query 命令:
bootcfg /query
bootcfg /query /s srvmain /u maindomhiropln /p p@ssW23
bootcfg /query /u hiropln /p p@ssW23
代码语言:javascript复制#9.在[operating systems]节为指定的系统添加系统启动选项
bootcfg raw
语法
bootcfg [/s Computer [/u DomainUser /p Password]] /raw OSLoadOptionsString [/id OSEntryLineNum]
Bootcfg raw 可将文本添加到某个操作系统项的末尾,该过程会覆盖任何已有的操作系统项选项,所添加的文本应包含有效的 OS 加载项,比如 /debug、/fastdetect、/nodebug、/baudrate、/crashdebug 以及 /sos 等。
比如使用下述命令可将“/debug /fastdetect”添加到首个操作系统项的末尾,并会替代此前的任何操作系统项选项:
bootcfg /raw "/debug /fastdetect" /id 1
有关可选 OS 加载项以及 Windows 在启动期间如何使用 Boot.ini 文件的详细信息,请参阅 Microsoft Knowledge Base 中编号为 Q170756 的技术文章,其标题为“Windows NT Boot.ini 文件的可用开关项”。
下述范例显示了如何使用 bootcfg /raw 命令:
bootcfg /raw "/debug /sos" /id 2
bootcfg /raw /s srvmain /u maindomhiropln /p p@ssW23 "/crashdebug " /id 2
代码语言:javascript复制#10.删除指定操作系统的启动选项
bootcfg rmsw
#语法
bootcfg /rmsw [/s Computer [/u DomainUser /p Password]] [/mm] [/bv] [/so] [/ng] /id OSEntryLineNum
#下述范例显示了如何使用 bootcfg /rmsw 命令:
bootcfg /rmsw /mm 64 /id 2
bootcfg /rmsw /so /id 3
bootcfg /rmsw /so /ng /s srvmain /u hiropln /id 2
bootcfg /rmsw /ng /id 2
bootcfg /rmsw /mm 96 /ng /s srvmain /u maindomhiropln /p p@ssW23 /id 2
代码语言:javascript复制#11.改变系统启动时间
bootcfg timeout
#语法
bootcfg /timeout TimeOutValue [/s Computer [/u DomainUser /p Password]]
TimeOutValue :指定位于 [boot loader] 区段的超时值。
#该值表示在 NTLDR 加载默认的操作系统之前可供用户从启动加载程序画面选择操作系统的秒数,如果该值为 0,则 NTLDR 将不显示启动加载程序画面而直接启动默认的操作系统。
#下述范例显示了如何使用 bootcfg /timeout 命令:
bootcfg /timeout 30
bootcfg /s srvmain /u maindomhiropln /p p@ssW23 /timeout 50
警告: BOOT.INI 用于 Windows XP 及更早版本操作系统上的启动选项,使用 BCDEDIT 命令行工具修改Windows Vista 引导选项.
bcdedit 命令
代码语言:javascript复制#示例1.禁用与恢复系统签名
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
#恢复系统签名
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING OFF
powercfg 命令
描述:此命令行工具使用户能够控制系统上的电源设置。
参数列表与语法:
代码语言:javascript复制#1.-LIST, -L列出当前用户环境中的所有电源方案
POWERCFG -LIST
#2.-DELETE, -D 删除具有指定 GUID 的电源方案
POWERCFG -DELETE <GUID> #其中 <GUID> 是通过使用 LIST 参数获得的
#3.-DELETESETTING 删除电源设置
# <SUB_GUID> 指定子组 GUID。
# <SETTING_GUID> 指定电源设置 GUID。
POWERCFG -DELETESETTING <SUB_GUID> <SETTING_GUID>
#4.-QUERY, -Q 显示指定电源方案的内容
# <SCHEME_GUID> (可选)指定要显示的电源方案的 GUID,可以使用 powercfg -l 获得它
# <SUB_GUID> (可选)指定要显示的子组 GUID,要求提供一个 SCHEME_GUID
# POWERCFG -QUERY <SCHEME_GUID> <SUB_GUID>
# 如果 SCHEME_GUID 或 SUB_GUID 均未提供,则会显示当前用户的活动电源方案的设置。
# 如果未指定 SUB_GUID,则会显示指定的电源方案中的所有设置。
powercfg -q 381b4222-f694-41f0-9685-ff5bb260df2e fea3413e-7e05-4911-9a71-700331f1c294
WeiyiGeek.
代码语言:javascript复制#5.-CHANGE, -X 修改当前电源方案中的一个设置值。
#用法:
POWERCFG -X <SETTING> <VALUE>
#参数:
<SETTING> 指定下列选项之一:
-monitor-timeout-ac <分钟> #交流
-monitor-timeout-dc <分钟> #直流
-disk-timeout-ac <分钟>
-disk-timeout-dc <分钟>
-standby-timeout-ac <分钟>
-standby-timeout-dc <分钟>
-hibernate-timeout-ac <分钟>
-hibernate-timeout-dc <分钟>
#示例:
#当使用交流电源时,这会将监视器空闲超时值设置为 5 分钟。
POWERCFG -Change -monitor-timeout-ac 5
WeiyiGeek.
代码语言:javascript复制#6.-CHANGENAME 修改电源方案的名称并可选择修改其描述
用法:
POWERCFG -CHANGENAME <GUID> <name> <scheme description>
如果该描述被忽略,则仅修改该名称
#7.-DUPLICATESCHEME 复制指定的电源方案,将会显示代表新方案的结果 GUID。
用法:
POWERCFG -DUPLICATESCHEME <GUID> <destination GUID>
案例:
<GUID> 指定通过使用 powercfg -l 获得的方案 GUID
如果忽略 <destination GUID>,将为重复的方案创建新 GUID。
#8.-SETACTIVE, -S 使指定的电源方案在系统上成为活动的
用法:
POWERCFG -SETACTIVE <SCHEME_GUID>
<SCHEME_GUID> 指定方案 GUID
#9.-GETACTIVESCHEME 检索当前活动的电源方案
用法:
POWERCFG -GETACTIVESCHEME
# 10.-SETACVALUEINDEX当系统是由交流电源供电时,设置一个与指定的电源设置相关联的值。
# 11.-SETDCVALUEINDEX当系统是由直流电源供电时,设置一个与指定的电源设置相关联的值。
用法:
POWERCFG -SETACVALUEINDEX <SCHEME_GUID> <SUB_GUID> <SETTING_GUID> <SettingIndex> 交流
POWERCFG -SETDCVALUEINDEX <SCHEME_GUID> <SUB_GUID> <SETTING_GUID> <SettingIndex> 直流
参数:
<SCHEME_GUID> 指定一个电源方案 GUID,并可以通过使用 PowerCfg /L 获得它。
<SUB_GUID> 指定电源设置 GUID 的一个子组,并可以通过使用 "PowerCfg /Q" 获得它。
<SETTING_GUID> 指定一个单独的电源设置 GUID,并可以通过使用 "PowerCfg /Q" 获得它。
<SettingIndex> 指定此电源设置将被设置为可能值列表中的哪个值。
示例:
POWERCFG -SetAcValueIndex <GUID> <GUID> <GUID> 5
这会将该电源设置的交流值设置为此电源设置的可能值列表中的第 5 项。
# 12.-HIBERNATE, -H 启用-禁用休眠功能。所有所有系统上都支持
用法:
POWERCFG -H <ON|OFF>
POWERCFG -H -Size <PercentSize>
参数:
-Size 以总内存百分比指定所需的休眠文件大小。默认大小不得小于 50。此开关还自动启用休眠文件。
# 13.-AVAILABLESLEEPSTATES, -A 报告系统上可用的睡眠状态尝试报告睡眠状态不可用的原因
# 14.-DEVICEQUERY 返回符合指定标准的设备列表
POWERCFG -DEVICEQUERY <queryflags>
#<queryflags> 指定以下标准之一:
wake_from_S1_supported 返回支持从浅睡眠状态唤醒系统的所有设备。
wake_from_S2_supported 返回支持从深睡眠状态唤醒系统的所有设备。
wake_from_S3_supported 返回支持从最深睡眠状态唤醒系统的所有设备。
wake_from_any 返回支持从任何睡眠状态唤醒系统的所有设备。
S1_supported 列出支持浅睡眠的设备。
S2_supported 列出支持较深睡眠的设备。
S3_supported 列出支持最深睡眠的设备。
S4_supported 列出支持休眠的设备。
wake_programmable 列出用户可配置的从某个睡眠状态唤醒系统的设备。
wake_armed 列出当前配置为从任何睡眠状态唤醒系统的设备。
all_devices 返回系统中现有的所有设备。
# all_devices_verbose 返回详细的设备列表。 (未实现)
POWERCFG -DEVICEQUERY wake_armed
# HID-compliant mouse
# HID Keyboard Device (002)
# Intel(R) Ethernet Connection I217-LM
#15.# -DEVICEENABLEWAKE 使设备能够从睡眠状态唤醒系统。
#用法:
POWERCFG -DEVICEENABLEWAKE <devicename>
#<devicename> 指定使用以下命令检索的设备:
PowerCfg -DEVICEQUERY wake_programmable
POWERCFG -DEVICEENABLEWAKE "Microsoft USB IntelliMouse Exp"
WeiyiGeek.
代码语言:javascript复制# 16.-DEVICEDISABLEWAKE <devicename> 禁止该设备从睡眠状态禁止该设备从睡眠状态唤醒系统
#用法:
POWERCFG -DEVICEDISABLEWAKE <devicename>
# 17.-IMPORT 从指定的文件导入所有电源设置。
#用法:
POWERCFG -IMPORT <filename> <GUID>
<filename> 指定到由以下内容生成的文件的完全限定路径"PowerCfg -EXPORT" 参数生成的文件的完全限定
<GUID> (可选)将设置加载到此 GUID 所代表的电源方案中。如果未提供,powercfg将生成并使用新 GUID
#示例:
POWERCFG -IMPORT c:scheme.pow
#18.-EXPORT 将指定的 GUID 代表的电源方案导出到指定的文件。
用法:
POWERCFG -EXPORT <filename> <GUID>
示例:
POWERCFG -EXPORT c:scheme.pow 381b4222-f694-41f0-9685-ff5bb260df2
WeiyiGeek.
代码语言:javascript复制# 19.-LASTWAKE 报告关于哪些设备从上次睡眠中唤醒系统的信息转换
# 20.-ALIASES 显示所有别名及其相应的 GUID,用户可以使用这些别名代替命令行上的任何 GUID。
# 21.-SETSECURITYDESCRIPTOR 设置与指定的电源设置、电源方案、操作相关联的安全描述符。
用法:
POWERCFG -SETSECURITYDESCRIPTOR <GUID|ACTION> <SDD
参数:
<GUID> 指定电源方案或电源设置 GUID。
<ACTION> 可以是下列字符串之一: ActionSetActive、ActionCreate、ActionDefaul
<SDDL> 以 SDDL 格式指定一个有效的安全描述符字符串。
调用 POWERCFG -GETSECURITYDESCRIPTOSDDL 字符串示例。
# 22.-GETSECURITYDESCRIPTOR 获取与指定的电源设置、电源方案或操作相关联的安全描述符。
用法:
POWERCFG -GETSECURITYDESCRIPTOR <GUID|ACTION>
<GUID> 指定电源方案或电源设置 GUID
<ACTION> 可以是下列字符串之一: ActionSetActive, ActionCreate, ActionDefaul
# 23.-REQUESTS 枚举应用程序和驱动程序电源请求,电源请求阻止计算机自动关闭显示器电源,或者阻止进入低能量睡眠模式。
# 24.-REQUESTSOVERRIDE 为特定进程、服务或驱动程序设置电源请求替代。如果未指定任何参数,则该命令显示当前的电源请求替代列表。
用法:
POWERCFG -REQUESTSOVERRIDE <CALLER_TYPE> <NAME> <REQUEST>
参数
<CALLER_TYPE> 指定以下调用程序类型之一:PROCESS、SERVICE、DRIVER。这通过调用 POWERCFG -REQUESTS 命令获得。
<NAME> 指定调用程序名称。这是通过调用 POWERCFG -REQUESTS 命令返回的名称。
<REQUEST> 指定以下一个或多个电源请求类型: Display、System、Awaymode。
示例:
POWERCFG -REQUESTSOVERRIDE PROCESS wmplayer.exe Disp
# -ENERGY 分析系统中常见的能量效率和电池寿命问题,当计算机空闲且没有打开的程序或文档时应该使用 ENERGY命令。
ENERGY 命令将在当前路径中生成一个 HTML 报告文件,ENERGY命令支持以下可选参数:
#用法:
POWERCFG -ENERGY [-OUTPUT <FILENAME>] [-XML] [-DURATION <SECONDS>]
POWERCFG -ENERGY -TRACE [-D <FILEPATH>] [-DURATION <SECONDS>]
#参数:
-OUTPUT <FILENAME> – 指定存储能量报告 HTML 文件的路径和文件名。
-XML - 将报告文件格式化为 XML 文件。
-TRACE - 记录系统行为,但不执行分析。 除非指定 -D 参数,否则将在当前路径中生成跟踪文件。
-D <FILEPATH> - 指定存储跟踪数据的目录。只能与 -TRACE 参数一起使用。
-DURATION <SECONDS> – 指定观察系统行为的秒数。默认值为 60 秒。
-WAKETIMERS -枚举活动唤醒计时器。如果启用,唤醒计时器可以将系统从睡眠状态和休眠状态唤醒。
#实例
powercfg -energy -output test.html -DURATION 10
WeiyiGeek.