Wmic使用指南.docx
《Wmic使用指南.docx》由会员分享,可在线阅读,更多相关《Wmic使用指南.docx(14页珍藏版)》请在冰点文库上搜索。
Wmic使用指南
Wmic使用指南(总19页)
14.Wmic使用指南
BIOS–基本输入/输出服务(BIOS)管理
:
:
查看bios版本型号
wmicbiosgetManufacturer,Name
COMPUTERSYSTEM–计算机系统管理
:
:
查看系统启动选项,boot的内容
wmicCOMPUTERSYSTEMgetSystemStartupOptions
:
:
查看工作组/域
wmiccomputersystemgetdomain
:
:
更改计算机名abc为123
wmiccomputersystemwhere“name=’abc’”callrename123
:
:
更改工作组google为MyGroup
wmiccomputersystemwhere“name=’google’”calljoindomainorworkgroup“”,”",”MyGroup”,1
CPU–CPU管理
:
:
查看cpu型号
wmiccpugetname
DATAFILE–DataFile管理
:
:
查找e盘下test目录(不包括子目录)下的文件
wmicdatafilewhere“drive=’e:
’andpath=’\\test\\’andFileName=’cc’andExtension=’cmd’”list
:
:
查找e盘下所有目录和子目录下的文件,且文件大小大于1K
wmicdatafilewhere“drive=’e:
’andFileName=’cc’andExtension=’cmd’andFileSize>’1000′”list
:
:
删除e盘下文件大小大于10M的.cmd文件
wmicdatafilewhere“drive=’e:
’andExtension=’cmd’andFileSize>’′”calldelete
:
:
删除e盘下test目录(不包括子目录)下的非.cmd文件
wmicdatafilewhere“drive=’e:
’andExtension<>’cmd’andpath=’test’”calldelete
:
:
复制e盘下test目录(不包括子目录)下的文件到e:
\,并改名为
wmicdatafilewhere“drive=’e:
’andpath=’\\test\\’andFileName=’cc’andExtension=’cmd’”callcopy“e:
\”
:
:
改名c:
\为c:
\
wmicdatafile“c:
\\”callrenamec:
\
:
:
查找h盘下目录含有test,文件名含有perl,后缀为txt的文件
wmicdatafilewhere“drive=’h:
’andextension=’txt’andpathlike‘%\\test\\%’andfilenamelike‘%perl%’”getname
DESKTOPMONITOR–监视器管理
:
:
获取屏幕分辨率
wmicDESKTOPMONITORwhereStatus=’ok’getScreenHeight,ScreenWidth
DISKDRIVE–物理磁盘驱动器管理
:
:
获取物理磁盘型号大小等
wmicDISKDRIVEgetCaption,size,InterfaceType
ENVIRONMENT–系统环境设置管理
:
:
获取temp环境变量
wmicENVIRONMENTwhere“name=’temp’”getUserName,VariableValue
:
:
更改path环境变量值,新增e:
\tools
wmicENVIRONMENTwhere“name=’path’andusername=’’”setVariableValue=”%path%;e:
\tools”
:
:
新增系统环境变量home,值为%HOMEDRIVE%%HOMEPATH%
wmicENVIRONMENTcreatename=”home”,username=””,VariableValue=”%HOMEDRIVE%%HOMEPATH%”
:
:
删除home环境变量
wmicENVIRONMENTwhere“name=’home’”delete
FSDIR–文件目录系统项目管理
:
:
查找e盘下名为test的目录
wmicFSDIRwhere“drive=’e:
’andfilename=’test’”list
:
:
删除e:
\test目录下除过目录abc的所有目录
wmicFSDIRwhere“drive=’e:
’andpath=’\\test\\’andfilename<>’abc’”calldelete
:
:
删除c:
\good文件夹
wmicfsdir“c:
\\good”calldelete
:
:
重命名c:
\good文件夹为abb
wmicfsdir“c:
\\good”rename“c:
\abb”
LOGICALDISK–本地储存设备管理
:
:
获取硬盘系统格式、总大小、可用空间等
wmicLOGICALDISKgetname,Description,filesystem,size,freespace
NIC–网络界面控制器(NIC)管理
OS–已安装的操作系统管理
:
:
设置系统时间
wmicoswhere(primary=1)callsetdatetime+480
PAGEFILESET–页面文件设置管理
:
:
更改当前页面文件初始大小和最大值
wmicPAGEFILESETsetInitialSize=”512″,MaximumSize=”512″
:
:
页面文件设置到d:
\下,执行下面两条命令
wmicpagefilesetcreatename=’d:
\’,initialsize=512,maximumsize=1024
wmicpagefilesetwhere”name=’c:
\\’”delete
PROCESS–进程管理
:
:
列出进程的核心信息,类似任务管理器
wmicprocesslistbrief
:
:
结束进程,路径为非C:
\WINDOWS\system32\的
wmicprocesswhere“name=’’andExecutablePath<>’C:
\\WINDOWS\\system32\\’”callTerminate
:
:
新建notepad进程
wmicprocesscallcreatenotepad
PRODUCT–安装包任务管理
:
:
安装包在C:
\WINDOWS\Installer目录下
:
:
卸载.msi安装包
wmicPRODUCTwhere“name=’Microsoft.NETFramework′andVersion=’callUninstall
:
:
修复.msi安装包
wmicPRODUCTwhere“name=’Microsoft.NETFramework′andVersion=’callReinstall
SERVICE–服务程序管理
:
:
运行spooler服务
wmicSERVICEwherename=”Spooler”callstartservice
:
:
停止spooler服务
wmicSERVICEwherename=”Spooler”callstopservice
:
:
暂停spooler服务
wmicSERVICEwherename=”Spooler”callPauseService
:
:
更改spooler服务启动类型[auto|Disabled|Manual]释[自动|禁用|手动]
wmicSERVICEwherename=”Spooler”setStartMode=”auto”
:
:
删除服务
wmicSERVICEwherename=”test123″calldelete
文章地址–共享资源管理
:
:
删除共享
wmicSHAREwherename=”e$”calldelete
:
:
添加共享
WMICSHARECALLCreate“”,”test”,”3″,”TestShareName”,”",”c:
\test”,0
SOUNDDEV–声音设备管理
wmicSOUNDDEVlist
STARTUP–用户登录到计算机系统时自动运行命令的管理
:
:
查看msconfig中的启动选项
wmicSTARTUPlist
SYSDRIVER–基本服务的系统驱动程序管理
wmicSYSDRIVERlist
USERACCOUNT–用户帐户管理
:
:
更改用户administrator全名为admin
wmicUSERACCOUNTwherename=”Administrator”setFullName=”admin”
:
:
更改用户名admin为admin00
wmicuseraccountwhere“name=’admin”callRenameadmin00
关于WMIC的使用
最佳操作
对为别名返回的特定实例使用WHERE()子句。
WHERE()子句必须包括WHERE子句以进行有效的WQL查询。
只有复杂的条件才需要括号。
请查看WQL语法的WMISDK。
WHERE()子句必须紧随在别名之后。
例如:
processwhere(processID>300)listbrief
当WHERE子句是WHERENAME=’’时,只提供值就足够了。
例如:
SERVICECLIPSRV
代替:
SERVICEWHERENAME=’CLIPSRV’
使用/OUTPUT、/APPEND和/RECORD命令重定向输出。
以HTML格式输出的命令(如CLASS)通常将它们的输出定向到一个文件。
然后可以查看该文件,以了解命令的结果。
可以使用/OUTPUT、/APPEND和/RECORD命令重定向输出。
如果值包含特殊字符(短划线、斜杠或空格),则请用引号将值括起来。
对于大的域或数据库,请使用以下查询的方法
ALIAS
WMICALIASPROCESSLISTBRIEF
USERACCOUNT
WMICUSERACCOUNTWHERE“Name=’PutUserNameHere’andDomain=’PutDomainNameHere’”
FSDIR
WMICFSDIRWHEREName=’c:
\\WINDOWS’
DATAFILE
WMICDATAFILEWHEREName=”c:
\\”WMICDATAFILEWHERE“PATH=’\\windows\\’andExtension=’exe’andFileSize>’108032′”GETLastAccessed,LastModified,Name,FileSize
NTEVENT
WMICNTEVENTWHERE“LogFile=’system’andType>’0′”GETMessage,TimeGeneratedWMICNTEVENTWHERE“LogFile=’system’andType>’0′”GETMessage,TimeGenerated/FORMAT:
htable>c:
\
查询:
使用引号“”将WHERE表达式分开,而不用括号():
WMICNTEVENTWHERE“LogFile=’system’andType>’4′”
[比较:
WMICNTEVENTWHERE(LogFile='system'andTYPE>4)
在这种情况下,命令行解释器将曲解">4)"
并试图将输出重定向到指定文件"4)"]
在交互模式下运行WMIC
1.
单击“开始”,然后单击“运行”。
2.
键入:
WMIC,然后按Enter。
3.
键入希望WMIC执行的别名、命令或全局开关。
注意
要执行该过程,您必须是本地计算机上Administrators组的成员,或者您必须被委派了适当的权限。
如果计算机已加入某个域,则DomainAdmins组的成员可能会执行该过程。
详细信息,请参阅默认本地组和默认组。
在交互模式下使用完WMIC之后,可以使用Exit或Quit命令退出WMIC。
有关WMIC命令的详细信息,请在命令提示符处键入/。
在非交互模式下运行WMIC
1.
打开“命令提示符”。
2.
在命令提示符下,键入:
WMIC
和希望WMIC执行的命令、别名或全局开关。
3.
按Enter。
注意
要执行该过程,您必须是本地计算机上Administrators组的成员,或者您必须被委派了适当的权限。
如果计算机已加入某个域,则DomainAdmins组的成员可能会执行该过程。
作为安全性最佳操作,请考虑使用“运行方式”执行此过程。
详细信息,请参阅默认本地组、默认组以及使用运行方式。
要打开命令提示符窗口,请单击“开始”,依次指向“所有程序”、“附件”,然后单击“命令提示符”。
在非交互式模式下,WMIC在执行一个命令之后返回到命令提示符。
有关WMIC命令的详细信息,请在命令提示符处键入WMIC/。
WMIC的安全性
有关安全模式的一般信息
只有本地Administrators组的用户才可以启动WMIC。
在任何从WMIC到WMI的调用中都会强制执行WMI安全访问模型。
操作系统对于通过WMI执行的任何操作均强制实施操作系统级别的安全性。
例如,您不能通过WMI访问您不能从Windows资源管理器访问的文件。
WMIC是WMI的客户端,因此所有安全检查都在WMI组件内进行。
在连接到远程计算机之前,组件使用PING功能验证输入的有效性(远程计算机状态)。
当WMIC在Telnet、终端服务或相似会话中使用时,所有命令都将在发布该命令的用户环境中执行。
WMIC允许对别名和XSL进行扩展。
安全性是通过NTFS解决的,该文件系统对访问WMIC的文件的操作实施仅限管理员的凭据要求。
除方法参数以外,WMIC还允许只通过/NODE开关进行数据输入。
可以使用@FileList选项作为一个文本文件提供计算机节点的列表。
文件以及其位置应由管理员进行保护,并且输入文件最好应从WBEM目录中读取。
用户权限
不需要特殊的用户权限即可运行WMIC。
含蓄地说,为了能够使用WMIC,用户需要有对WMIC名称空间和两个注册表项(HKLM\Software\Microsoft\WBEM和HKLM\Software\Microsoft\WBEM\WMIC)的完全写入访问权。
身份验证和授权
当这些资源被打开时,系统将提供身份验证和授权。
它们存储在安全的位置,并使用随机访问控制列表(DACL)验证客户端是否具有对它们进行访问的权限。
它们完全依赖于分布式组件对象模型(DCOM)安全性以及Windows管理(WINMGMT)进行远程访问,提供所需要的用户名、密码和所请求的级别。
可以使用/AUTHLEVEL开关保护WMIC网络通信的安全。
在WindowsServer2003家族操作系统中,默认级别设置为PKTPRIVACY,它提供数据包隐私性加密级别。
可以使用/AUTHLEVEL开关修改身份验证级别。
示例:
WMIC/AUTHLEVEL:
Pktprivacy/NODE:
”BIOS
配置数据
配置信息存储在注册表和WMI储备库中。
注册表配置保存了有关架构的采用托管对象格式(MOF)编译的状态的时间戳和有效性。
在WMIC的每一个会话开始时,将对此信息进行评估,当架构无效或已被一个用户更新时,WMIC将更新WMI储备库。
杂项
WMIC是一个功能强大的命令行工具,通过该工具,您可以很快地执行您有权限执行的任何任务。
如果您不熟悉WMI环境,可以使用/INTERACTIVE开关为删除操作设置一个警告。
例如:
WMI/INTERACTIVE:
ON
下列命令在任何时候都可以使用:
CLASS退出WMIC的默认别名模式并以WMI架构直接访问类。
PATH退出WMIC的默认别名模式并以WMI架构直接访问实例。
CONTEXT显示所有全局开关的当前值。
QUIT退出WMIC。
EXIT退出WMIC
WMIC在批处理的应用实例(转)
第一次使用WMI会自动安装,等待数秒即可正常使用。
wmic获取硬盘固定分区盘符:
for/f“skip=1″%%iin(‘wmiclogicaldiskwhere“drivetype=3″getname’)do@echo%%i
简要说明:
wmic+欲操作的对象名+where从句(这是筛选条件)+get+对象的属性
这样的格式已经可以帮助我们获取很多东西了,大家可以具体参考
查看wmic对象:
wmic/
查看wmic对象有何可用属性:
wmic对象名称get/例如wmicprocessget/
查看wmic对象某个属性的值:
wmic对象名称get对象某个属性例如wmicprocessgetname
ps:
以上例子中的drivetype的值为2表示可移动磁盘或软盘,值为3表示固定磁盘,值为5表示光驱。
wmic获取进程名称、可执行路径、删除、创建指定进程
:
wmic获取进程名称以及可执行路径:
wmicprocessgetname,executablepath
wmic删除指定进程(根据进程名称):
wmicprocesswherename=””callterminate
或者用
wmicprocesswherename=””delete
wmic删除指定进程(根据进程PID):
wmicprocesswherepid=”123″delete
wmic创建新进程
wmicprocesscallcreate“C:
\ProgramFiles\Tencent\QQ\”
其实都很容易上手的,大家多用用就会熟悉这种模式了
详细信息用wmicprocessget/查看所有可用的属性
wmic操作远程计算机上的程序
在远程机器上创建新进程:
(2003系统)
wmic/node:
/user:
administrator/password:
123456processcallcreate
关闭本地计算机
wmicprocesscallcreate
重启远程计算机(2003系统)
wmic/node:
/user:
administrator/password:
123456processcallcreate“-r-f-m”
wmic操作计算机名称和用户帐户
更改计算机名称
wmiccomputersystemwhere“caption=’%ComputerName%’”callrenamenewcomputername
更改帐户名
wmicUSERACCOUNTwhere“name=’%UserName%’”callrenamenewUserName
wmic结束可疑进程(根据进程的启动路径)
wmicprocesswhere“name=’’andexecutablepath<>C:
\\WINDOWS\\windows\\’”delete
wmic获取物理内存memlogicalgetTotalPhysicalMemory|find/i/v“t”
wmic获取文件的创建、访问、修改时间(tvzml纠正)
@echooff
for/f“skip=1tokens=1,3,5delims=.”%%ain(‘wmicdatafilewherename^=”C:
\\WINDOWS\\”getCreationDate^,LastAccessed^,LastModified’)doseta=%%a&setb=%%b&setc=%%c
echo文件名称:
%WINDIR%\
echo创建时间:
%a:
~0,4%年%a:
~4,2%月%a:
~6,2%日,%a:
~8,2%:
%a:
~10,2%:
%a:
~12,2%
echo修改时间:
%c:
~0,4%年%c:
~4,2%月%c:
~6,2%日,%c:
~8,2%:
%c:
~10,2%:
%c:
~12,2%
echo访问时间:
%b:
~0,4%年%b:
~4,2%月%b:
~6,2%日,%b:
~8,2%:
%b:
~10,2%:
%b:
~12,2%
pause
wmic全盘搜索某文件并获取该文件所在目录
for/f“skip=1tokens=1*”%iin(‘wmicdatafilewhere“FileName=’qq’andextension=’exe’”getdrive^,path’)do(set“qPath=%i%j”&@echo%qPath:
~0,-3%)
wmic获取屏幕分辨率
wmicDESKTOPMONITORwhereStatus=’ok’getScreenHeight,ScreenWidth
更改当前页面文件初始大小和最大值,重启计算机后生效
wmicPageFileSetsetInitialSize=”512″,MaximumSize=”512″
设置虚拟内存到E盘,并删除C盘下的页面文件,重启计算机后生效
wmicPageFileSetcreatename=”E:
\\”,InitialSize=”1024″,MaximumSize=”1024″
wmicPageFileSetwhere“name=’C:
\\’”delete
获得进程当前占用的内存和最大占用内存的大小:
wmicprocesswherecaption=’’getWorkingSetSize,PeakWorkingSetSize