
對於未安裝伺服器 GUI 的伺服器,以下內容傳回 true:
WMIC PATH Win32_OptionalFeature WHERE "Caption = 'Microsoft-Windows-Server-Gui-Shell-Package-DisplayName' AND InstallState = 2"
然而,我嘗試將其轉換為 WMI 過濾器...
SELECT * FROM Win32_OptionalFeature WHERE Caption = Microsoft-Windows-Server-Gui-Shell-Package-DisplayName AND InstallState = 2
....失敗:
嘗試計算查詢字串時發生語法錯誤。
……這相當無益。
失敗的原因是什麼?
答案1
我在寫問題時解決了這個問題,並認為我會分享。當我敲出 WMIC 命令時,我欺騙了自己,並沒有考慮這裡使用的相當嚴格的 WQL 語法中對引號值的要求:
SELECT * FROM Win32_OptionalFeature WHERE Caption = "Microsoft-Windows-Server-Gui-Shell-Package-DisplayName" AND InstallState = "2"
無聊的解決方案,但你已經有了。它讓我開始喝酒,所以我想我可以節省別人未來的工作時間。
不過,不要讓它阻止你喝酒。這很有成效。