WMIC详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、什么是WMIC?
WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门的WMI应用,比如SMS,或者使用WMI的脚本编程API,或者使用象CIM Studio之类的工具。如果不熟悉C++之类的编程语言或VBScript之类的脚本语言,或者不掌握WMI名称空间的基本知识,要使用WMI管理系统是很困难的。WMIC改变了这种情况,为WMI名称空间提供了一个强大的、友好的命令行接口。
本文将主要介绍我在使用过程中的一些经验,本着实用主义的原则,过多的概念性的东西我就不多介绍了,在用到的时候我再进行一些解释。
和上面的官方定义比起来,还有一个更好理解的解释:WMIC,是一款命令行管理工具。使用WMIC,我们不但可以管理本地计算机,而且还可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计算机不必事先安装WMIC,只需要支持WMI即可。WMIC有一个能够分析、解释和执行从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文件通常位于“c:\windows\system32\wbem”文件夹中(支持WinXP和Win2003系统)。这样就比较好理解了吧,可以使用WMI管理远程计算机,是不是非常有吸引力呀!
二、WMIC能做什么?
可以使用WMIC实现如下的管理任务:
1、本地计算机管理
2、远程单个计算机管理
3、远程多个计算机管理
4、使用远程会话的计算机管理(如Telnet)
5、使用管理脚本的自动管理
三、简单的使用实例
1、运行WMIC
打开“开始”-“运行”栏,输入“WMIC”就可以启动wmic了,如图1。第一次运行时,会显示WMIC 正在安装,请稍等。几秒钟后就会出现如图2所示的命令提示符了。
2、初试WMIC下的命令
在窗口下输入●process●执行看看,结果如图3所示,列出了正在运行的进程和调用进程的路径。当然了,我们也可以输入●process list brief●来查看更详细的信息,比如进程名称、ID、优先级等。更重要的是,对于现在有些可以在任务管理器里隐藏进程的木马,要想在wmic里隐藏,可就没那么容易了,它会成为你查杀木马的好帮手。
现在只是知道了路径,如果怀疑某一进程,想查看它的详细信息又该怎么办呢?那输入●process name=‘jqs.exe’list full●就可以了,jqs是我安装java后新增加的一个进程,大家在测试时也可以选用别的,如图4。我们还可以使用以下命令来进程:●process where name=’jqs.exe’delete●,回车后就会提示我们是否删除,如图5。这里将delete换成“call terminate”也可以达到同样的效果。
在wmic下如何查看BIOS信息呢?我们输入●bios list full●,是使用的命令吧,不用重启电脑就可以知道你现在使用的电脑的BIOS信息了,如图6。
除此之外,wmic还有停止、暂停和运行服务的功能:启动服务startservice,停止服务stopservice,暂停服务pauseservice。具体的命令使用格式就是:
●Service where caption=”windows time” call stopservice●--停止服务
●Service where caption=”windows time” call startservice●--启动服务
●Service where name=”w32time” call stopservice●--停止服务,注意name和caption的
区别。
●wmic process call create shutdown.exe●--关闭本地计算机。
想要知道更多的命令,直接在命令行下输入“/?”,就可以获得详细的帮助信息了,如图7。
很多人制作的批处理或者脚本功能都是调用wmi实现的,它所具有的查看功能非常强大,尤其是安装了WMIC的电脑可以连接到任何一台安装了WMI的电脑,被连接的电脑不需要安装WMIC。比如我们要查看局域网内所有计算机的进程,监视对方计算机进程等,至于其他更多的功能就请读者自己去挖掘吧
C:\Documents and Settings\Lihongtao>wmic /?
[global switches]
有效的全局开关有:
/NAMESPACE 别名使用的名称空间路径。
/ROLE 包含此别名定义的角色路径。
/NODE 别名使用的服务器。
/IMPLEVEL 客户模拟级别。
/AUTHLEVEL 客户身份验证级别。
/LOCALE 客户应用的语言识别符。
/PRIVILEGES 启用或禁用所有特权。
/TRACE 将调试信息输出到 stderr。
/RECORD 将所有输入命令和输出写入日志。
/INTERACTIVE 设置或重设交互模式。
/FAILFAST 设置或重置 FailFast 模式。
/USER 会话期间使用的用户。
/PASSWORD 用于会话登录的密码。
/OUTPUT 为输出重新定向指定模式。
/APPEND 为输出重新定向指定模式。
/AGGREGATE 设置或重置集合模式。
/AUTHORITY Specifies the
/?[:
有关具体全局开关的信息,请输入: switch-name /?
当前角色有下列别名。:
ALIAS - 访问本地机器上的别名
BASEBOARD - 基板 (也叫母板或系统板) 管理。
BIOS - 基本输入/输出服务 (BIOS) 管理。
BOOTCONFIG - 启动配置管理。
CDROM - CD-ROM 管理。
COMPUTERSYSTEM - 计算机系统管理。
CPU - CPU 管理。
CSPRODUCT - SMBIOS 的计算机系统产品信息。
DATAFILE - DataFile 管理。
DCOMAPP - DCOM 程序管理。
DESKTOP - 用户桌面管理。
DESKTOPMONITOR - 监视器管理。
DEVICEMEMORYADDRESS - 设备内存地址管理。