WMIC的用法

本文详细介绍WMIC命令的各种应用场景,包括获取系统版本信息、进程管理、硬件信息查询等。此外还提供了多个实例帮助读者更好地理解和使用WMIC。
WMIC的用法
2010年07月21日 星期三 上午 00:34

WMIC的用法

获得系统版本信息

wmic datafile where Name='c://windows//explorer.exe' get Manufacturer,Version,Filename

 

 

获得信筒进程

 

wmic process list full        注意:这里的full也可以换成brief(简洁)

获得硬件信息(这里以cpu为例)

wmic cpu get name,caption,maxclockspeed,description

将结果输出到d盘的1.txt里面

wmic /output:D:/1.txt cpu get name

 

wmic 获取硬盘固定分区盘符:
wmic logicaldisk where "drivetype=3" get name

wmic 获取硬盘各分区文件系统以及可用空间:
wmic logicaldisk where "drivetype=3" get name,filesystem,freespace

wmic 获取进程名称以及可执行路径:
wmic process get name,executablepath

wmic 删除指定进程(根据进程名称):
wmic process where name="qq.exe" call terminate
或者用
wmic process where name="qq.exe" delete

wmic 删除指定进程(根据进程PID):
wmic process where pid="123" delete

wmic 创建新进程
wmic process call create "C:/Program Files/Tencent/QQ/QQ.exe"

在远程机器上创建新进程:
wmic /node:192.168.1.10 /user:administrator /password:123456 process call create cmd.exe

关闭本地计算机
wmic process call create shutdown.exe

重启远程计算机
wmic /node:192.168.1.10/user:administrator /password:123456 process call create "shutdown.exe -r -f -m"

更改计算机名称
wmic computersystem where "caption='%ComputerName%'" call rename newcomputername

更改帐户名
wmic USERACCOUNT where "name='%UserName%'" call rename newUserName

wmic 结束可疑进程(根据进程的启动路径)
wmic process where "name='explorer.exe' and executablepath<>'%SystemDrive%//windows//explorer.exe'" delete

wmic 获取物理内存
wmic memlogical get TotalPhysicalMemory|find /i /v "t"

wmic 获取文件的创建、访问、修改时间

@echo off
'wmic datafile where name^="c://windows//system32//notepad.exe" get CreationDate^,LastAccessed^,LastModified

wmic 全盘搜索某文件并获取该文件所在目录
wmic datafile where "FileName='qq' and extension='exe'" get drive,path

for /f "skip=1 tokens=1*" %i in ('wmic datafile where "FileName='qq' and extension='exe'" get drive^,path') do (set "qPath=%i%j"&@echo %qPath:~0,-3%)

获取屏幕分辨率
wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

获取共享资源(包括隐藏共享)

WMIC share list brief

获取U盘盘符,并运行U盘上的QQ.exe
@for /f "skip=1 tokens=*" %i in ('wmic logicaldisk where "drivetype=2" get name') do (if not "%i"=="" start d:/qq.exe)

获得进程当前占用的内存和最大占用内存的大小:
wmic process where caption='filename.exe' get WorkingSetSize,PeakWorkingSetSize


把内存大小改成KB(MB的话可能有小数)
@echo off
for /f "skip=1 tokens=1-2 delims= " %%a in ('wmic process where caption^="conime.exe" get WorkingSetSize^,PeakWorkingSetSize') do (
set /a m=%%a/1024
set /a mm=%%b/1024
echo 进程conime.exe现在占用内存:%m%K;最高占用内存:%mm%K)
pause

 

一些wmic例子

关键字: 一些wmic例子

BIOS   - 基本输入/输出服务 (BIOS) 管理
::查看bios版本型号
wmic bios get Manufacturer,Name

COMPUTERSYSTEM - 计算机系统管理
::查看系统启动选项,boot的内容
wmic COMPUTERSYSTEM get SystemStartupOptions
::查看工作组/域
wmic computersystem get domain
::更改计算机名abc为123
wmic computersystem where "name='abc'" call rename 123
::更改工作组google为MyGroup
wmic computersystem where "name='google'" call joindomainorworkgroup "","","MyGroup",1

CPU - CPU 管理
::查看cpu型号
wmic cpu get name

DATAFILE - DataFile 管理
::查找e盘下test目录(不包括子目录)下的cc.cmd文件
wmic datafile where "drive='e:' and path='//test//' and FileName='cc' and Extension='cmd'" list
::查找e盘下所有目录和子目录下的cc.cmd文件,且文件大小大于1K
wmic datafile where "drive='e:' and FileName='cc' and Extension='cmd' and FileSize>'1000'" list
::删除e盘下文件大小大于10M的.cmd文件
wmic datafile where "drive='e:' and Extension='cmd' and FileSize>'10000000'" call delete
::删除e盘下test目录(不包括子目录)下的非.cmd文件
wmic datafile where "drive='e:' and Extension<>'cmd' and path='test'" call delete
::复制e盘下test目录(不包括子目录)下的cc.cmd文件到e:/,并改名为aa.bat
wmic datafile where "drive='e:' and path='//test//' and FileName='cc' and Extension='cmd'" call copy "e:/aa.bat"
::改名c:/hello.txt为c:/test.txt
wmic datafile "c://hello.txt" call rename c:/test.txt
::查找h盘下目录含有test,文件名含有perl,后缀为txt的文件
wmic datafile where "drive='h:' and extension='txt' and path like '%//test//%' and filename like '%perl%'" get name

DESKTOPMONITOR - 监视器管理
::获取屏幕分辨率
wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

DISKDRIVE   - 物理磁盘驱动器管理
::获取物理磁盘型号大小等
wmic DISKDRIVE get Caption,size,InterfaceType

ENVIRONMENT   - 系统环境设置管理
::获取temp环境变量
wmic ENVIRONMENT where "name='temp'" get UserName,VariableValue
::更改path环境变量值,新增e:/tools
wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;e:/tools"
::新增系统环境变量home,值为%HOMEDRIVE%%HOMEPATH%
wmic ENVIRONMENT create name="home",username="<system>",VariableValue="%HOMEDRIVE%%HOMEPATH%"
::删除home环境变量
wmic ENVIRONMENT where "name='home'" delete

FSDIR   - 文件目录系统项目管理
::查找e盘下名为test的目录
wmic FSDIR where "drive='e:' and filename='test'" list
::删除e:/test目录下除过目录abc的所有目录
wmic FSDIR where "drive='e:' and path='//test//' and filename<>'abc'" call delete
::删除c:/good文件夹
wmic fsdir "c://good" call delete
::重命名c:/good文件夹为abb
wmic fsdir "c://good" rename "c:/abb"

LOGICALDISK   - 本地储存设备管理
::获取硬盘系统格式、总大小、可用空间等
wmic LOGICALDISK get name,Description,filesystem,size,freespace

NIC - 网络界面控制器 (NIC) 管理

OS   - 已安装的操作系统管理
::设置系统时间
wmic os where(primary=1) call setdatetime 20070731144642.555555+480

PAGEFILESET   - 页面文件设置管理
::更改当前页面文件初始大小和最大值
wmic PAGEFILESET set InitialSize="512",MaximumSize="512"
::页面文件设置到d:/下,执行下面两条命令
wmic pagefileset create name='d:/pagefile.sys',initialsize=512,maximumsize=1024
wmic pagefileset where"name='c://pagefile.sys'" delete

PROCESS - 进程管理
::列出进程的核心信息,类似任务管理器
wmic process list brief
::结束svchost.exe进程,路径为非C:/WINDOWS/system32/svchost.exe的
wmic process where "name='svchost.exe' and ExecutablePath<>'C://WINDOWS//system32//svchost.exe'" callTerminate
::新建notepad进程
wmic process call create notepad

PRODUCT - 安装包任务管理
::安装包在C:/WINDOWS/Installer目录下
::卸载.msi安装包
wmic PRODUCT where "name='Microsoft .NET Framework 1.1' and Version='1.1.4322'" call Uninstall
::修复.msi安装包
wmic PRODUCT where "name='Microsoft .NET Framework 1.1' and Version='1.1.4322'" call Reinstall

SERVICE - 服务程序管理
::运行spooler服务
wmic SERVICE where name="Spooler" call startservice
::停止spooler服务
wmic SERVICE where name="Spooler" call stopservice
::暂停spooler服务
wmic SERVICE where name="Spooler" call PauseService
::更改spooler服务启动类型[auto|Disabled|Manual] 释[自动|禁用|手动]
wmic SERVICE where name="Spooler" set StartMode="auto"
::删除服务
wmic SERVICE where name="test123" call delete

SHARE - 共享资源管理
::删除共享
wmic SHARE where name="e$" call delete
::添加共享
WMIC SHARE CALL Create "","test","3","TestShareName","","c:/test",0

SOUNDDEV - 声音设备管理
wmic SOUNDDEV list

STARTUP - 用户登录到计算机系统时自动运行命令的管理
::查看msconfig中的启动选项
wmic STARTUP list

SYSDRIVER   - 基本服务的系统驱动程序管理
wmic SYSDRIVER list

USERACCOUNT   - 用户帐户管理
::更改用户administrator全名为admin
wmic USERACCOUNT where name="Administrator" set FullName="admin"
::更改用户名admin为admin00
wmic useraccount where "name='admin" call Rename admin00
当使用 `wmic memorychip` 命令报错时,下面是一些可能的解决办法: ### 管理员权限问题 在 Windows 系统中,许多系统管理命令需要管理员权限才能正常执行。若以普通用户权限运行 `wmic memorychip` 命令,可能会报错。解决办法是使用管理员权限运行命令提示符或 PowerShell。 操作步骤如下: 1. 在开始菜单中找到“命令提示符”或“Windows PowerShell”。 2. 右键单击它们的图标,选择“以管理员身份运行”。 3. 在打开的具有管理员权限的命令行窗口中,再次输入 `wmic memorychip` 命令并执行。 ### WMIC 服务未正常运行 WMIC(Windows Management Instrumentation Command-line)依赖于 Windows Management Instrumentation 服务。若该服务未正常运行,`wmic memorychip` 命令可能会报错。 可以通过以下步骤检查并启动该服务: 1. 按下 `Win + R` 组合键,打开“运行”对话框。 2. 输入 `services.msc` 并回车,打开“服务”窗口。 3. 在服务列表中找到“Windows Management Instrumentation”服务。 4. 查看该服务的状态,如果是“已停止”,右键单击它,选择“启动”。 5. 再次尝试运行 `wmic memorychip` 命令。 ### WMIC 数据库损坏 WMIC 的数据库可能会出现损坏,从而导致命令执行报错。可以通过以下命令来修复 WMIC 数据库: ```batch winmgmt /verifyrepository winmgmt /salvagerepository winmgmt /resetrepository ``` 上述命令的作用分别是验证、修复和重置 WMIC 数据库。依次在命令提示符(以管理员身份运行)中输入并执行这些命令,每执行完一条命令等待其执行完成后再执行下一条。执行完这些命令后,再次尝试运行 `wmic memorychip` 命令。 ### 系统文件损坏 如果系统文件损坏,也可能影响 WMIC 的正常运行。可以使用系统自带的工具来修复系统文件。 使用 `sfc /scannow` 命令来扫描并修复系统文件: ```batch sfc /scannow ``` 在命令提示符(以管理员身份运行)中输入上述命令并执行,该命令会扫描系统文件并自动修复发现的损坏文件。扫描和修复过程可能需要一些时间,请耐心等待。完成后,再次尝试运行 `wmic memorychip` 命令。 ### 硬件问题 如果以上方法都无法解决问题,可能是计算机的硬件存在问题,例如内存模块故障等。可以通过以下方法检查硬件: 1. 检查内存模块是否安装牢固,可以打开计算机机箱,重新插拔内存模块。 2. 使用硬件检测工具,如 MemTest86 等,对内存进行全面检测,以确定是否存在内存硬件故障。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值