windows server 2025,windows 11 ,启用WMIC命令的方法。

WMIC (英文全称Windows Management Instrumentation Command-line)是 Windows 管理工具(WMI)的命令行界面,允许用户查询和管理系统设置、配置以及 Windows 操作系统的其他方面。

WMIC(Windows Management Instrumentation Command-line)是 Windows 操作系统中的一个命令行工具,它提供了一个与 Windows 管理工具(WMI)交互的接口。WMIC 允许用户通过命令行查询和管理系统信息、硬件设备、软件配置、进程等系统设置。通过 WMIC,用户可以执行多种管理任务,如获取系统性能信息、管理用户账户、查看磁盘状态等。

WMIC (Windows Management Instrumentation Command-line) 功能分类的表格化概览:

功能类别 功能描述
系统信息查询 提供系统硬件、操作系统、服务等的详细信息。例如:wmic oswmic cpuwmic memorychip
硬件设备管理 获取和管理硬件信息,如 CPU、硬盘、内存、显示器、网络适配器等。例如:wmic diskdrivewmic nic
进程管理 获取、启动、停止进程等。例如:wmic processwmic process where "name='processname'" call terminate
软件与应用管理 查询和管理已安装的软件或应用程序。例如:wmic productwmic service
网络配置与状态 获取网络适配器、IP 配置、网络连接等信息。例如:wmic nicconfigwmic path win32_networkadapter
用户和账户管理 管理本地用户账户和组信息。例如:wmic useraccountwmic group
磁盘与存储管理 查询磁盘驱动器和分区的详细信息。例如:wmic logicaldiskwmic volume
电源管理 获取电池、适配器等电源相关的设备信息。例如:wmic path Win32_Battery
打印机管理 查询和管理打印机设备。例如:wmic printer
事件查看与日志 获取事件日志和错误报告。例如:wmic ntevent

这些分类涵盖了 WMIC 的常用功能,用户可以通过不同的命令查询系统的硬件、软件、进程、网络等信息,并进行一些管理任务。

WMIC(Windows Management Instrumentation Command-line) 操作模式的分类及相关功能的表格:

操作模式 功能描述 示例命令
查询模式(Query Mode) 用于查询系统信息、硬件信息、配置状态等。通过查询语句从 WMI 类获取数据。 wmic cpu get caption, maxclockspeed
执行模式(Execute Mode) 用于执行 WMI 方法(如启动、停止进程、调用服务等)或更改系统配置。 wmic process where name="notepad.exe" call terminate
设置模式(Set Mode) 用于更改某些系统设置或配置,如设置用户密码、更改服务状态等。 wmic service where name="wuauserv" call change startmode="disabled"
别名模式(Alias Mode) 用于列出和使用 WMIC 别名(即 WMI 类别),简化常见查询。 wmic alias list brief
输出重定向模式(Redirect Mode) 用于将 WMIC 的输出结果重定向到文件中,方便后续分析。 wmic os get caption > os_info.txt
批处理模式(Batch Mode) 用于批量执行多个命令,常用于自动化脚本中,执行一组操作。 创建一个包含多个 WMIC 命令的批处理文件(如 .bat 文件)
条件查询模式(Where Clause Mode) 用于在查询中添加条件,从而获取更精确的信息。 wmic process where "name='notepad.exe'" get processid, caption
帮助模式(Help Mode) 提供 WMIC 命令及其语法的帮助信息。 wmic /?
版本信息模式(Version Mode) 查看 WMIC 工具的版本信息。 wmic /version

解释:

  • 查询模式:主要用于从 WMI 中查询信息,返回系统或硬件配置数据。
  • 执行模式:执行某些方法,如停止进程、管理服务等。
  • 设置模式:更改系统设置、启动模式等。
  • 别名模式:列出和使用 WMI 别名类,简化查询。
  • 输出重定向模式:将命令的输出结果保存到文件。
  • 批处理模式:允许通过批处理脚本执行多个 WMIC 命令。
  • 条件查询模式:在查询时加入特定条件,获取更精准的信息。
  • 帮助模式:查看 WMIC 工具的帮助和使用说明。
  • 版本信息模式:查看 WMIC 的版本信息,通常用于确认工具的当前版本。

这些操作模式帮助用户根据需求灵活地查询和管理 Windows 系统的配置和状态。

WMIC为什么被禁用,未来移除?

WMIC(Windows Management Instrumentation Command-line)命令工具被弃用的原因与多方面的技术和设计考虑有关。主要原因包括:

1. PowerShell 的强大功能

  • PowerShell 替代:微软推出了 PowerShell,并逐渐将其作为主要的系统管理工具。PowerShell 提供了比 WMIC 更强大、更灵活的功能,尤其在脚本化和自动化管理方面。PowerShell 不仅支持 WMI,还支持更复杂的对象模型、管道、模块等功能,使得它成为了管理和自动化任务的首选工具。
  • PowerShell 可以访问 WMI 和其他系统管理工具:PowerShell 本身也可以通过 Get-WmiObject 或 Get-CimInstance 等命令与 WMI 进行交互,提供比 WMIC 更丰富的功能和更简洁的语法。

    PowerShell 通过 Get-WmiObjectGet-CimInstance 命令能够与 Windows 管理工具(WMI)进行交互,并能提供比 WMIC 更加丰富的功能和简洁的语法。这些命令允许你查询、管理和操作 Windows 系统中的许多组件和服务。下面是一些常见的示例,展示如何使用这两个命令。

    1. 查询操作系统信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_OperatingSystem

    此命令将返回有关当前操作系统的详细信息,包括操作系统版本、构建号、安装日期等。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_OperatingSystem

    Get-CimInstance 是 PowerShell 3.0 及之后版本引入的命令,通常建议使用它,因为它在远程管理和性能上比 Get-WmiObject 更加高效。

    2. 获取处理器信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_Processor

    这个命令会列出有关计算机中所有处理器的信息,例如处理器的名称、核心数、线程数等。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_Processor

    Get-WmiObject 类似,Get-CimInstance 返回类似的处理器信息。

    3. 获取内存信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_PhysicalMemory

    此命令会列出计算机中所有物理内存条的详细信息,包括容量、制造商、速度等。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_PhysicalMemory

    通过 Get-CimInstance 查询内存信息,得到的输出同样包括内存的详细信息。

    4. 查询磁盘驱动器信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_DiskDrive

    此命令会返回有关硬盘驱动器的信息,例如型号、容量、接口类型等。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_DiskDrive

    同样,Get-CimInstance 会提供类似的信息,但在处理大量数据时性能较好。

    5. 查询系统服务

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_Service

    该命令列出了当前计算机上所有运行的系统服务及其状态。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_Service

    通过 Get-CimInstance 获取的系统服务信息与 Get-WmiObject 相似,但通常执行速度更快。

    6. 获取网络适配器信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_NetworkAdapter

    此命令返回有关网络适配器的信息,包括适配器名称、MAC 地址、连接状态等。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_NetworkAdapter

    这同样会返回网络适配器的详细信息,但 Get-CimInstance 在跨网络或远程查询时表现更佳。

    7. 获取事件日志信息

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_NTLogEvent

    此命令返回事件日志中的所有条目。你可以根据 EventCodeTimeGenerated 等字段筛选具体的日志。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_NTLogEvent

    Get-CimInstance 也可以用来获取事件日志信息,性能更高。

    8. 查询操作系统的启动时间

    使用 Get-WmiObject

    powershellCopy Code
    (Get-WmiObject -Class Win32_OperatingSystem).LastBootUpTime

    这将返回操作系统上次启动的时间。

    使用 Get-CimInstance

    powershellCopy Code
    (Get-CimInstance -ClassName Win32_OperatingSystem).LastBootUpTime

    Get-CimInstance 同样可以返回操作系统的启动时间,通常它比 Get-WmiObject 更高效。

    9. 列出当前的用户会话

    使用 Get-WmiObject

    powershellCopy Code
    Get-WmiObject -Class Win32_ComputerSystem

    这个命令列出了当前计算机的用户会话信息。

    使用 Get-CimInstance

    powershellCopy Code
    Get-CimInstance -ClassName Win32_ComputerSystem

    同样返回当前用户会话信息,但 Get-CimInstance 的表现通常更优。

     

    • Get-WmiObject 和 Get-CimInstance 都能够访问 Windows Management Instrumentation(WMI)数据源,并返回系统管理和硬件组件的信息。
    • Get-CimInstance 是现代化的命令,更加高效,特别是在处理大量数据或远程管理时,相较于 Get-WmiObject 具有更好的性能。
    • PowerShell 提供了更简洁的语法和更多的功能,可以轻松地进行数据筛选和格式化,因此它已经逐渐取代了传统的 WMIC 工具。

    这些示例展示了如何利用 PowerShell 强大的命令来获取 Windows 系统中的各种管理信息,帮助用户更高效地进行系统管理和自动化任务。

2. 不再更新和维护

  • 技术陈旧:WMIC 是基于早期的 WMI(Windows Management Instrumentation)接口,它已经没有得到足够的更新和改进。微软逐步将重心转向 PowerShell,这意味着 WMIC 不再作为优先更新和维护的工具。
  • 长期支持性差:随着 Windows 操作系统版本的更新,WMIC 的一些功能逐渐不再支持或无法适应新的需求。

3. 更好的用户体验

  • PowerShell 的用户体验更优:PowerShell 提供了更丰富的命令和功能,以及更强大的调试和脚本化能力。它支持更复杂的管理任务,并且更符合现代 IT 管理员的需求。
  • 模块化和扩展性:PowerShell 具有更强的模块化设计,允许用户加载并扩展许多外部模块,这使得它的功能更加丰富和灵活。

4. 跨平台支持

  • PowerShell 的跨平台性:PowerShell 现在已经支持 Windows、Linux 和 macOS,这使得它可以作为跨平台的管理工具。而 WMIC 是 Windows 专用的工具,不具备跨平台的功能。

5. 性能和可扩展性

  • 性能限制:WMIC 在执行复杂查询或与大量数据交互时,可能会显得较慢或效率较低。而 PowerShell 提供了更高效的命令处理和更好的性能,特别是在处理大规模数据时,能够提供更高的效率和灵活性。

6. 逐步淘汰

  • 微软的战略方向:微软在其官方文档中明确指出,WMIC 已经被弃用,未来不会继续更新和支持 WMIC。微软的未来发展重点将放在 PowerShell 和其他现代工具上,这也促使 IT 管理员逐步转向 PowerShell。

 

WMIC 被弃用主要是因为 PowerShell 提供了更强大的功能、更好的用户体验、更好的性能以及更广泛的跨平台支持。微软推荐 IT 管理员和开发者转向 PowerShell,以适应现代化的管理和自动化需求。


Windows 10,11 启用WMIC命令
DISM /Online /Add-Capability /CapabilityName:WMIC~~~~
Windows server 2022,2025 启用WMIC命令
DISM /Online /Enable-Feature /FeatureName:IIS-WMICompatibility /Al

Windows 10,11 禁用卸载WMIC命令
DISM /Online /Remove-Capability /CapabilityName:WMIC~~~
Windows server 2022,2025 禁用卸载WMIC命令
DISM /Online /Disable-Feature /FeatureName:IIS-WMICompatibility /Remove


windows server 2022 2025 

查询命令:Dism /Online /Get-Features

部署映像服务和管理工具
版本: 10.0.26100.1150

映像版本: 10.0.26100.3194

程序包功能列表 : Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~10.0.26100.1

功能名称 : IIS-WMICompatibility
状态 : 已禁用


命令行启用WMIC功能
1、以管理身份打开CMD或powershell命令执行窗口,输入如下命令进行添加wmic操作:

PS C:\Users\Administrator> DISM /Online /Get-FeatureInfo /FeatureName:IIS-WMICompatibility

部署映像服务和管理工具
版本: 10.0.26100.1150

映像版本: 10.0.26100.3194

功能信息:

功能名称 : IIS-WMICompatibility
显示名称 : IIS 6 WMI 兼容性
描述 : 安装 IIS 6.0 WMI 脚本接口
需要重新启动 : Possible
状态 : 已禁用

自定义属性:

ServerComponent\Description : IIS 6 WMI 兼容性提供 Windows Management Instrumentation (WMI)脚本接口,以便从您在 WMI 提供程序中创建的脚本集以编程方式管理和自动执行 IIS 10.0 Web 服务器的任务。此服务包括用于管理站点的 WMI CIM Studio、WMI 事件 注册、WMI 事件查看器和 WMI 对象浏览器工具。
ServerComponent\DisplayName : IIS 6 WMI 兼容性
ServerComponent\Id : 180
ServerComponent\Parent : Web-Mgmt-Compat
ServerComponent\Type : RoleService
ServerComponent\UniqueName : Web-WMI
ServerComponent\NonAncestorDependencies\ServerComponent\UniqueName : Web-Metabase
ServerComponent\Deploys\Update\Name : IIS-WMICompatibility

操作成功完成。
PS C:\Users\Administrator> DISM /Online /Enable-Feature /FeatureName:IIS-WMICompatibility /All

部署映像服务和管理工具
版本: 10.0.26100.1150

映像版本: 10.0.26100.3194

启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。
PS C:\Users\Administrator>

如果使用后需要禁用或卸载,可以执行如下命令:

 DISM /Online /Disable-Feature /FeatureName:IIS-WMICompatibility /Remove


Windows 10,11,

命令行启用WMIC功能
1、以管理身份打开CMD或powershell命令执行窗口,输入如下命令进行添加wmic操作:

DISM /Online /Add-Capability /CapabilityName:WMIC~~~~
2、添加完成后,重新执行wmic命令后正常无报错。

如果使用后需要卸载,可以执行如下命令:

DISM /Online /Remove-Capability /CapabilityName:WMIC~~~


 

posted @ 2025-03-02 13:11  suv789  阅读(1024)  评论(0)    收藏  举报