WMIC 全新的超级命令行管理工具

Windows 11 中 wmic 命令找不到的解决方法与替代方案 在 Windows 11 中,wmic 命令常因系统版本策略变化或 Path 环境变量配置问题而无法找到,导致命令行报错或 Java 程序抛出 Cannot run program "wmic" 异常。其原理是系统在 Path 目录中搜索可执行文件失败,而 wmic.exe 位于 System32\wbem 目录。修复需通过系统功能重新添加 WMIC 或修复 Path 环境变量,这能恢复硬件查询、进程管理等技术价值。应用场景包括运维自动化、Java 开发硬件指纹获取等。长期建议迁移到 PowerShell 阅读详情
本文节选自《Windows & .NET Magazine国际中文版》

  [导读]文章难度:高级★★★★★


  微软Windows Server的图形界面接口在为网络管理提供便利的同时,因其消耗资源偏大、操作缓慢而颇受Windows管理员的微词,为提供一个图形管理界面之外的另一种选择,微软推出了集WMI的强大与命令行的简洁于一身的全新的命令行管理工具WMIC。加入了WMIC的Windows server 2003的命令行,据称可以完成几乎所有的管理任务。

  以DOS起家的微软,最终靠图形界面一统了天下。传统的微软Windows Server的图形界面接口,在使系统管理简单易行的同时,其偏大的资源消耗与缓慢的操作速度,不但使众多IT Pro级系统管理员颇有微词,也使许多从Unix、NetWare转过来的系统管理员短时间内难以适从。虽然微软开发了WMI(Windows Management Instrumentation,Windows管理架构),并在Support Tools和Resource Kits提供了大量基于WMI的脚本让管理员使用,在命令行下管理服务器,但复杂的脚本编程同样令许多管理员却步,因为并非每个管理员都是脚本编程高手。从另一个角度讲,图形界面接口像一个黑盒子,使许多管理员丧失了量身定制管理任务的机会与乐趣,只能亦步亦趋地跟在越来越多的向导屁股后面,不停地点按着"下一步"。

  鉴于上述原因,微软在Windows Server 2003中,综合了WMI的强大与命令行的简洁,推出了全新的命令行管理工具WMIC,英文全称Windows Management Instrumentation Command-line,即Windows管理规范命令行。并声称使用WMIC,再配合其他现存的命令行工具,管理员几乎可以完成所有的管理任务,而不必再过多地依赖那些图形界面。

  本文将对WMIC进行一个简单的介绍,由于笔者在撰稿时Windows Server 2003还没有正式发布,所以一切技术均以Windows Server 2003 RC2(Build 3718)为准,最终版本正式发布后可能会有变化。

  背景:WMI、WBEM与CIM

  关于WMI,我们在以前的文章中多次提及,并有过具体的应用,如《使用VS.NET实现WMI调用》(2003年1月刊),《限制域用户同时的多点登录》与《来一段脚本,Kill掉Mike的歌》(2003年2月刊)等。这里不准备再对其做详细的说明,只做一下简单的介绍。

  WMI是微软基于Web的企业管理(WBEM)这一理念与标准的具体实现,并对CIM(Common Information Model,公用信息模型)提供完整的支持。WMI由符合CIM标准的对象储备库(Object Repository)和CIM对象管理器(WMI Object Manager)组成,其中对象储备库是对象定义的数据库,对象管理器负责处理储备库中对象的收集和操作,并从WMI提供程序(WMI Provider)收集信息。WMI提供程序在WMI与操作系统组件、应用程序和其他系统之间充当中间人角色,两者通过WMI提供程序交换信息。WMI提供程序的主要作用就是为WMI提供下层对象的相关信息,以及允许WMI通过它对下层对象进行管理。例如,注册表提供程序从注册表中提供信息,而SNMP提供程序则从SNMP设备中提供数据和事件等。

  WMI被许多计算机管理工具所用,如Microsoft Systems Management Server、Microsoft Health Monitor和Microsoft Operations Manager等。

  WMIC概述

  WMIC,是一款新出现在Windows Server 2003中的命令行管理工具。使用WMIC,你不但可以管理本地计算机,而且可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计算机不必事先安装WMIC,只需要支持WMI即可。

  WMIC有一个能够分析、解释和执行从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文件通常位于"c:/windows/

  system32/wbem"文件夹中,该程序运行于用户当前登录的计算机上。任何对WMIC命令行的扩展性能都经过别名文件定义或者注册。别名又称友好名称(Friendly Names),通过MOF(Management Object Format,管理对象格式)格式定义。WMIC引擎接收到输入的命令后,先进行分析。如果命令是一个别名,WMIC会从当前操作命名空间(比如root/cli)调用该别名的定义,应用当前的环境设置(如目标命名空间),并将别名命令与它的原始命令进行对应,然后执行。

  具体来说,你可以使用WMIC实现如下的管理任务:

  1、本地计算机管理

  2、远程单个计算机管理

  3、远程多个计算机管理

  4、使用远程会话的计算机管理(如Telnet)

  5、使用管理脚本的自动管理

  只有本地管理员组成员才能够启动WMIC,由于WMIC本质上是WMI的一个客户端,因此WMIC的安全受限于WMI的安全。当WMIC在一个远程会话中被使用时,如Telnet、终端服务等,缺省情况下,它使用发起此会话的用户的安全上下文。在使用WMIC管理一个远程计算机之前,WMIC会Ping一下远程计算机以确定其状态。

  在使用WMIC命令行时,可以随时使用"/?"来获得当前命令上下文的帮助信息。

  执行模式

  WMIC可以以两种模式执行:交互模式(Interactive mode)和非交互模式(Non-Interactive mode),经常使用Netsh命令行的管理员应该非常熟悉这两种模式。

  交互模式。如果你在命令提示符下或通过"运行"菜单只输入WMIC,都将进入WMIC的交互模式,每当一个命令执行完毕后,系统还会返回到WMIC提示符下,如"Root/cli",交互模式通常在需要执行多个WMIC指令时使用。当你需要先执行"CONTEXT"命令查看环境变量,再使用"OS"命令查看当前操作系统消息时,就可以使用交互模式,如图1所示。交互模式有时还会对一些敏感的操作要求确认,比如删除操作,最大限度地防止管理员出现失误。

  非交互模式。非交互模式是指将WMIC指令直接作为WMIC的参数放在WMIC后面,当指令执行完毕后再返回到普通的命令提示符下,而不是进入到WMIC上下文环境中。WMIC的非交互模式主要用于批处理或者其他一些脚本文件中,比如上面的"OS"命令在非交互模式下就可以使用下面的方式执行:

  wmic os /?

  使用WMIC管理系统

  WMIC包含了众多的开关、命令,以及内置的别名,详细内容见表1、表2和表3。下面让我们通过具体的实例体验一下WMIC的强大功能。

  简单管理任务

  使用WMIC,可以完成一些简单的管理任务,比如查看硬件与操作系统信息。如果不使用WMIC,查询硬件如BIOS、CPU、操作系统等信息,通常是使用系统提供的API接口进行编程,或者编写一小段脚本程序,是一件比较麻烦的事情,如表4所示就是一个查询BIOS信息的传统VBscript脚本。如果使用WMIC,那情况就大不相同,只需要一个简单命令就能搞定:

  wmic bios list full

  结果如图2所示。

  大家可能注意到了上面命令行中还有两个参数list和full。list决定显示的信息格式与范围,它有Brief、Full、Instance、Status、System、Writeable等多个参数,full只是它的一个参数,也是list的缺省参数,表示显示所有的信息。其他几个参数顾名思义,如Brief表示只显示摘要信息,Instance表示只显示对象实例,Status表示显示对象状态,Writeable表示只显示该对象的可写入的属性信息等。

  在管理过程中,尤其是进行远程系统管理的时候,管理员多数喜欢列一下进程列表,以了解当前系统中正在运行的程序。下面的命令就可以达到这一目的:

  wmic process list brief

  它会显示当前所有进程的一些摘要信息,比如进程名称、进程ID和优先级等。在我以前的文章《来一段脚本,Kill掉Mike的歌》中,就可以使用这一命令代替那个list.vbs脚本。

  复杂管理任务

  WMIC在完成复杂管理任务方面也是非常出色的,先看一下查询事件日志并生成结果文件的例子:

  WMIC /node:"dc2" /user:"mytest" NTEVENTswheres"eventtype<3 and eventtype>0 AND logfile='Application'" GET Logfile, SourceName, Eventtype, Message, TimeGenerated /FORMAT:htable:"sortby=EventType">c:/Application.htm

  这行长长的命令表示从计算机DC2中查询应用程序日志信息,事件类型为小于3且大于0的事件,通常是警告与错误事件。因为是远程计算机,所以命令中使用了"/node"和"/user"开关。输出结果保存为网页格式,保存在"c:/Application.htm"文件中,并以事件类型进行排序。当你使用上面的命令时,因为使用了"/user"开关,所以系统会首先提示你输入与该用户匹配的密码,如图3所示,查询结果如图4所示。

  同样,你还可以使用WMIC同时重新启动多台被管理的服务器或工作站,命令如下:

  WMIC /NODE:@"c:/MyServerList.txt" OSswheres(Primary="TRUE") CALL Win32ShutDown 6

  WMIC会首先从"c:/MyServerList.txt"中取得服务器名称列表,这些服务器名称在文件中以逗号分割,如"dc1,dc2"。要注意的是,在/node开关后面使用服务器列表文件时,一定要在文件名的前面加上"@"引导符。该命令执行结果如图5所示,在执行重新启动过程中,WMIC会返回详细的执行结果。

  WMIC还可以从Active Directory中取得数据,下面是一个从Active Directory中取得用户信息的例子,取得的用户信息包括显示名称、UPN名称、名称和创建时间等,返回结果如图6所示:

  WMIC/NAMESPACE:/root/directory/ldap PATH ds_user GET ds_displayname, ds_userprincipalname, ds_cn, ds_name, ds_whencreated /VALUE

  总结

  WMIC是我所见到的基于windows平台的功能最强大的命令行工具,但同样也是最复杂的工具。尤其是在完成复杂的管理任务时,你需要对WMI的Win32类的属性及方法非常熟悉才可能做到游刃有余。因此,在希望熟悉运用WMIC之前,建议先学习WMI,熟悉其Win32类的各种属性及方法。国内现在出过几本不错的WMI书籍,你也可以到微软的MSDN网站(MSDN.microsoft.com)上查询这方面的信息。

  有了WMIC的加入,命令行们应该可以大声说:"虽然我很丑,但是我很强大"了

解决Windows“目录不为空”删除错误:chkdsk修复文件系统逻辑错误 在Windows文件系统中,NTFS和FAT32等文件系统通过目录项或MFT条目来管理文件和文件夹。当这些元数据记录因病毒、异常断电或程序崩溃而损坏时,会导致文件索引指针混乱,从而出现“目录不为空”的删除错误。这种文件系统层面的逻辑错误不仅影响数据管理效率,还可能隐藏安全风险。通过Windows内置的chkdsk工具,可以检查和修复主文件表(MFT)及目录结构,恢复文件系统的完整性。该技术广泛应用于U盘病毒清理、系统维护和数据恢复等场景,能有效解决Thumbs.dn等畸形文件夹无法删除的问题,避免不必要的全 阅读详情

相关推荐

规模化运维利器:远程桌面集中管理工具的核心功能与实战应用

远程桌面协议(RDP)和SSH是服务器远程管理的核心技术,它们允许用户通过网络连接并控制另一台计算机。其原理基于客户端-服务器模型,通过加密通道传输图形界面或命令行指令。在运维自动化和规模化运维场景下,高效管理成百上千个连接成为关键挑战。传统单点连接方式效率低下,容易出错,无法满足批量操作和快速定位的需求。因此,集中化的远程连接管理工具应运而生,它们通过数据库统一管理连接信息,并提供批量连接、分组管理、快速搜索和命令批量执行等功能,显著提升了运维效率,减少了人为差错。这类工具特别适用于管理大量Windows

weixin_30463341的博客 472

win11报错 ‘wmic‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件 的解决方案

右键点击“此电脑”或“计算机”:选择“属性”,然后点击“高级系统设置”。进入环境变量设置:在“系统属性”窗口中,点击“环境变量”。检查Path变量:在“系统变量”部分,找到并双击 Path 变量。确保 C:\Windows\System32 和 C:\Windows 这两个路径存在且未被注释掉。Wmic命令位于 C:\Windows\System32 目录下。另外,C:\Windows\System32\wbem也要添加在Path中!

樱吹雪 1万+

KongTuke攻击分析:网站篡改与PowerShell滥用攻防实战

在网络安全领域,攻击者常利用系统内置工具和合法服务构建隐蔽的攻击链。PowerShell作为Windows系统强大的管理和自动化组件,其灵活性和高权限特性使其成为攻击者青睐的“无文件攻击”载体。攻击者通过社会工程学或漏洞利用入侵网站,植入恶意脚本,当用户访问时,脚本会利用浏览器触发PowerShell下载并执行远程恶意载荷,实现权限获取和横向移动。这种攻击方式绕过了传统杀毒软件对可执行文件的监控,隐蔽性极强。本文以KongTuke攻击活动为例,深入剖析了从网站入侵、恶意脚本投递到PowerShell滥用的完

weixin_30644369的博客 316

Windows安全基础——Windows WMI详解

WMI(Windows Management Instrumentation, Windows管理规范)是Windows 2000/XP管理系统的核心,属于管理数据和操作的基础模块。设计WMI的初衷是达到一种通用性,通过WMI操作系统、应用程序等来管理本地或者远程资源。它支持分布式组件对象模型(DCOM,Distribution Components Object Model)和Windows远程管理(WinRM),用户可通过WMI服务访问、配置、管理和监视Windows所有资源的功能。对于其他的Win32

Bruce_xiaowei的博客 6022

WMIC使用

远程创建进程 如下,以administrator用户连接192.168.52.140,并在机器上创建一个进程执行ipconfig命令,将结果写入c:\result.txt文本文件中:(由于wmic执行远程命令没有回显,所以要将结果写入到txt中) wmic /node:192.168.52.140 /user:administrator /password:123.com process call create "cmd.exe /c ipconfig > c:\result.txt...

渗透之路,攻防之间皆学问 7331

OpenWrt路由开启DDNS+端口转发进行外网访问

OpenWrt路由开启DDNS+端口转发进行外网访问(LuCI界面实现)--开篇一、准备工作二、开机!三、连接--结尾 –开篇 本篇适用于一切装有OpenWrt系统的路由器/软路由,只要你保证有WAN接口和一个光猫,甚至你不需要有LAN接口(当然前提是你能连接路由器的WIFI进后台,不然你只能通过LAN进后台咯)。所有的配置过程都是基于LuCI界面来的,当然大神们一般都通过SSH登陆路由使用命令配置,但我也不会啊,只能给个有GUI界面的教程了。 一、准备工作 一个装有OpenWrt系统的路由器/软路由并

秋之颂的博客 9万+

使用wmic.exe绕过应用程序白名单(多种方法)

一、Wmic.exe wmic实用程序是一款Microsoft工具,它提供一个wmi命令行界面,用于本地和远程计算机的各种管理功能,以及wmic查询,例如系统设置、停止进程和本地或远程运行脚本。因此,它可以调用XSL脚本来执行。 二、攻击方法 1.第一种方法:Koadic 我们将在Koadic的帮助下生成一个恶意的XSL文件,它是一个命令和控制工具,与Metasploit和Power...

weixin_30764137的博客 1402

硅谷刷屏的ClawdBot,让Mac mini卖爆了!创始人爆料:一人开发、100% AI 写代码

这两天,个人 AI 助手 ClawdBot 席卷硅谷,国内外社交平台上全是关于它的讨论。 在试用后,网友们纷纷给出了很高的评价。“它是迄今为止最伟大的 AI 应用,相当于你 24 小时全天候专属 AI 员工。”Creator Buddy 创始人兼 CEO Alex Finn 盛赞道,“这就是他们 (Anthropic) 希望 Claude Cowork 呈现的样子。”

技术引领业务创新 1587

强大的WMIC

WMIC 全新的超级命令行管理工具   微软Windows Server的图形界面接口在为网络管理提供便利的同时,因其消耗资源偏大、操作缓慢而颇受Windows管理员的微词,为提供一个图形管理界面之外的另一种选择,微软推出了集WMI的强大与命令行的简洁于一身的全新的命令行管理工具WMIC。加入了WMIC的Windows server 2003的命令行,据称可以完成几乎所有的管理任务。   以DOS起家的微软,最终靠图形界面一统了天下。传统的微软Windows Server的图形界面接口,在使..

weixin_39802884的博客 342

整理笔记——二极管

二极管是一种由半导体材料制成的一种具有单向导电性能的电子元器件,二极管的核心是PN结。加在二极管两端的电压和通关的电流被成为,二极管的伏安特性曲线​​​二极管的正向特性:起初正向电压较小时,正向电流几乎没有,称之为死区,此时二极管处于截止状态。当电压差超过截止电压(0.5V或者0.7V),电流随着电压上升,开始增加缓慢,随后急剧增大,二极管的电阻变小进入导通状态,此时电压变化较小。二极管的反向特性:起初反向电流很小,不随电压二变化,此时成为反向饱和电流;当方向电压达到二极管的反向击穿电压。

#include 811

医疗大模型实战——从零构建MedicalGPT全流程解析

本文详细解析了从零构建医疗大模型MedicalGPT的全流程实战。基于Qwen-7B模型与约195万条中文医疗数据,完整复现了增量预训练、监督微调与偏好对齐三大核心环节,并分享了如何在有限硬件资源下实现高效训练与部署,为开发者提供了可复现的医疗AI项目实战指南。

weixin_29193259的博客 556

WMIC 超级命令行管理工具

wmic 获取进程名称以及可执行路径: wmic process get name,executablepath wmic 删除指定进程(根据进程名称): wmic process where name="qq.exe" call terminate 或者用 wmi

lyylkj12的专栏 1395

C++坦克大战源代码

【代码】C++坦克大战源代码。

强国豪,林中霖 2613

应急响应-第一弹(windows/Linux)

使用【net user k8h3d】命令, 查看 k8h3d 账户的详细信息,或者直接到计算机管理中查看用户信息,或者使用D盾,名称以$结尾的 为隐藏账户,或者使用注册表方法,打开【注册表编辑器】窗口, 选择【HKEY _ LOCAL _ MACHINE】下的【SAM】选项, 为该项添 加【允许父项的继承权限传播到该对象和所有子对象。在命令行中输入【lastb】命令,可查看显示用户 错误的登录列表,包括错误的登录方法、 IP 地址、时间等。在命令行中输入【who】命令,可查看当前用户 登录系统情况。

qq_62729556的博客 762

Ovito隐藏技巧:用Expression Selection快速提取分子链(附模糊背景配置参数)

本文详细介绍了Ovito软件中Expression Selection功能的隐藏技巧,用于从复杂的分子动力学模拟数据中快速、精准地提取目标分子链。通过结合Expand Selection和Invert Selection等修饰器,形成一套高效的工作流,并深入解析了实现SCI论文级渲染效果的景深模糊参数配置,帮助研究者大幅提升数据处理与图片生成效率。

pz890123的博客 869

刷机维修进阶教程-----oppo机型 一加 7pro 修复基带 更改参数 实例详细步骤解析

通过课程基本可以了解 1-----oppo机型与一加7机型更改参数的具体步骤解析 2------了解oppo机型开启diag端口的具体步骤 3-----了解一加7这些机型改参数常识 。可以借鉴参考用于其他机型 4-----了解手机基带分区与基带辅助分区的作用 5-----机型参数能读取到 但不能写这种情况如何操作

小马哥的专栏 1480

邮件服务器论坛精华帖(5)

《OpenBSD 下配置sendmail 发信认证 [转]》★钉子0/238 2003-06-23 15:25 | -------- 使用rh7.3 sendmail作邮件服务器的请参考下文钉子2/400 2004-09-15 16:48 | benny_zhou2004 Redhat 7.2下qmail安装钉子0/380

想邮就邮 1364

手把手教您国内安装 Claude Code 并配置自定义大模型(包含New-API中转和可视化管理工具的使用)

国内免魔法畅用 Claude Code!手把手教你 Windows 安装、配置文件写法、对接阿里百炼 / DeepSeek / 智谱✨,附完整参数、正确命令、三方工具管理方案,新手一次成功!✅

XiaoqiangClub的博客 3786

Linux,常用命令,看这篇就够了

linux 常用命令大全

qq_48721706的博客 4万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

(已解决)win11 ‘wmic‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

(已解决)win11 'wmic' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

weixin_59410575的博客 5万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

上一篇: 使用WMIC从命令行对Windows的全面管理
下一篇: WINDOWS利器-WMIC使用
JavaAlpha
博客等级 码龄18年 910粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值