WMIC 是系統管理員的重要工具,在「命令提示字元」下提供了高效、精確的管理 Windows 系統的方式。管理員可利用WMIC執行系統設定、查詢和監控等操作。
微軟已宣布將在未來的 Windows 版本中逐步淘汰 WMIC:
此外,從 2024 年 1 月 29 日起,WMIC 在 Windows 預覽版中,僅作為一個可選功能提供,並且不再預設安裝。
那麼,對於依賴 WMIC 進行工作的使用者該怎麼辦呢?微軟推薦使用 Windows PowerShell 取代 WMIC。
PowerShell 是一個基於 .NET Framework 的命令列解釋器和腳本環境,具有更強大的功能和更靈活的語法。
接下來,讓我們先回顧一下 WMIC 的主要功能,然後再介紹如何使用 PowerShell 來平替這些功能。
#WMIC 全名為 Windows Management Instrumentation Command-line,是命令列工具。它提供了存取 Windows Management Instrumentation(WMI)的通道。 WMI 是 Windows 中一個強大的管理框架,用於資料管理和操作。
透過使用WMIC,管理員可以輕鬆地進行各種Windows管理任務。結合WMI腳本和應用程序,以及WinRM(Windows遠端管理)和SCCM(System Center Configuration Manager),可以實現在遠端電腦上自動化執行管理任務。 WMIC提供了強大的功能,可以透過命令列或腳本輕鬆地存取和管理Windows作業系統的各種資訊和功能。管理員可以使用WMIC查詢系統資訊、安裝軟體、設定網路設定等。同時,WMIC也支援遠端管理,管理員可以透過遠端連線輕鬆地管理多台電腦。透過結合WMI腳本和應用程序,管理員可以更靈活地自訂管理任務,並實現自動化執行。而藉助WinRM和SCCM等工具,可以更有效率地進行遠端管理,提高管理效率並減少手動操作
WMIC的緊密整合成允許使用者查詢和調整系統設置,例如,透過WMIC可以輕鬆調整Windows螢幕亮度。使用以下WMIC指令可以取得電腦的型號、名稱、製造商和系統類型。
wmic computersystem get manufacturer,model,name,systemtype
使用 WMIC 指令 取得電腦資訊
這條指令能迅速提供關鍵系統訊息,對系統管理員而言極為有用。
#WMIC 棄用時間表
既然 WMIC 這麼好用,微軟又為什麼要將之棄用,轉而推動 PowerShell 作為替代呢?這項決策主要基於以下幾點原因:
雖然 WMIC 在過去是非常有用的管理工具,但隨著技術的演進和新工具的出現,微軟認為轉向更現代、更安全、更強大的管理工具是必要的。
這反映了一個產業常態:隨著科技的進步,舊工具會被更先進的新工具所取代,以滿足現代 IT 環境的需求。
#在正式探討替代方案之前,我們需要先釐清幾個核心概念:
CIM cmdlets 通过 WS-Management 协议实现数据交换,该协议比 DCOM 更适合远程管理,尤其是在需要穿透防火墙时。
Get-CimInstance -ClassName CIM_ComputerSystem
该命令会显示当前计算机的系统信息,输出内容与 WMIC 命令相似。
使用 Get-CimInstance 获取系统信息
Get-CimInstance -ClassName CIM_OperatingSystem
该命令提供了操作系统的详细信息,包括系统目录、构建号和版本信息等。
虽然比较推荐使用 CIM cmdlets,但 PowerShell 同样支持直接使用 WMI 的 cmdlets。例如:
Get-WmiObject -Class Win32_Process
该命令会列出当前运行的所有进程。
使用 Get-WmiObject 查看进程列表
Get-WmiObject -Class Win32_Service | Where-Object {$_.State -eq "Running"}
该命令会筛选出所有当前正在运行的服务。
使用 Get-WmiObject 查看运行的服务
如果你之前主要使用 WMIC 进行管理任务,现在可以考虑将这些脚本转换为 PowerShell cmdlets。
PowerShell 提供了更多命令选项和更灵活的脚本功能,在多数情况下,这个转换过程直接且简单。
转换过程中,Get-Command
和Get-Help
cmdlets 能帮助你快速找到对应的 PowerShell 命令,及其使用方法。
例如,要查找所有与实例相关的可用 CIM 命令,可以使用:
Get-Command -Noun CimInstance*
使用 Get-Help
获取帮助
同时,Get-Help
命令能提供特定 cmdlet 的详细使用说明和示例,这对学习新命令非常有帮助:
Get-Help Get-CimInstance -Full
通过这种方式,你就可以逐步替换 WMIC 命令,从而提高系统管理的效率和安全性。
要深入了解 PowerShell 中的 WMI 和 CIM 命令使用方法,可以参考微软发布的这篇指南。
自 2016 年起,微软就已经开始逐步淘汰 WMIC。虽然没有宣布具体的弃用日期,但想必已经迫在眉睫。因此,建议系统管理员尽快开始探索迁移解决方案,把 PowerShell 的 WMI 和 CIM 工具融入日常管理工作和编程任务中。
以上是WMIC 終將謝幕:如何遷移到 PowerShell,系統管理員的必修課的詳細內容。更多資訊請關注PHP中文網其他相關文章!