New-CMQuery
建立Configuration Manager查詢。
語法
New-CMQuery
[-Comment <String>]
-Expression <String>
[-LimitToCollectionId <String>]
-Name <String>
[-TargetClassName <String>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
使用此 Cmdlet 在 Configuration Manager 中建立查詢。
Configuration Manager查詢會定義 WMI 查詢語言 (WQL) 運算式,以根據您提供的準則從月臺資料庫取得資訊。 WQL 類似于 SQL,但仍會通過 SMS 提供者,而不是直接進入資料庫。 因此,WQL 仍然遵守您的角色型存取設定。
查詢可以傳回大部分類型的Configuration Manager物件,包括電腦、網站、集合、應用程式和清查資料。 如需詳細資訊,請參閱 Configuration Manager 中的查詢簡介。
根據預設,Configuration Manager包含數個查詢。 您可以使用 Get-CMQuery Cmdlet 來檢閱預設查詢。 如需 WQL 運算式的更多範例,請參閱 範例 WQL 查詢。
注意事項
從Configuration Manager月臺磁片磁碟機執行 Configuration Manager Cmdlet,例如 PS XYZ:\>
。 如需詳細資訊,請 參閱開始使用。
範例
範例 1:為特定版本的伺服器建立新的查詢
此範例會建立名為Server 2016的新查詢,以搜尋具有以Microsoft Windows Server 2012開頭之作業系統標題的用戶端。 它會傳回下列三個屬性: 名稱、 上次登入使用者名稱和 OS 標題。
New-CMQuery -Name "Server 2016" -Expression 'select SMS_R_System.Name, SMS_R_System.LastLogonUserName, SMS_G_System_OPERATING_SYSTEM.Caption from SMS_R_System inner join SMS_G_System_OPERATING_SYSTEM on SMS_G_System_OPERATING_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_OPERATING_SYSTEM.Caption like "Microsoft Windows Server 2012%"' -TargetClassName "SMS_R_System" -LimitToCollectionId "SMS00001"
範例 2:建立桌面裝置的查詢
此範例會建立名為Desktop 裝置的新查詢,以搜尋具有系統機箱類別底座類型屬性之特定值的裝置。 它會傳回多個屬性,並受限於特定集合。
New-CMQuery -Name "Desktop devices" -Expression 'select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_SYSTEM_ENCLOSURE on SMS_G_System_SYSTEM_ENCLOSURE.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SYSTEM_ENCLOSURE.ChassisTypes in ( "3", "4", "5","6", "7", "15","16")' -TargetClassName "SMS_R_System" -LimitToCollectionId "XYZ000049"
參數
-Comment
指定選擇性批註,以進一步識別網站中的查詢。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DisableWildcardHandling
此參數會將萬用字元視為常值字元值。 您無法將其與 ForceWildcardHandling結合。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Expression
指定 WQL 語句,定義要在結果中顯示的屬性,以及限制結果的準則。
WQL 語句通常會在) ("
包含雙引號,因此請將此參數的值設定為以單引號括住的字串, ('
) 。
如需更多範例,請 參閱範例 WQL 查詢。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-ForceWildcardHandling
此參數會處理萬用字元,並可能導致非預期的行為 (不建議) 。 您無法將其與 DisableWildcardHandling結合。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LimitToCollectionId
指定如何設定此查詢的集合限制:
-
不限集合:將此參數的值設定為空白字串 (
""
) 。 請勿使用$null
內建變數。 -
集合限制:指定集合的識別碼。 例如,
"SMSDM003"
針對 [所有桌面] 和 [伺服器用戶端] 集合。 -
提示收集:將此參數的值設定為
"<Prompt>"
。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Name
指定查詢的名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-TargetClassName
指定您想要查詢傳回的物件類別名稱。 有許多可用的物件類型。 下表列出數個通用類別名稱,以及來自 Configuration Manager 主控台的描述:
類別名稱 | 描述 |
---|---|
SMS_R_System |
系統資源 |
SMS_Program |
程式 |
SMS_R_UserGroup |
使用者群組資源 |
SMS_R_User |
使用者資源 |
SMS_SiteAndSubsites |
網站和子網站 |
SMS_R_UnknownSystem |
未知的電腦 |
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 時會發生什麼情況。 Cmdlet 不會執行。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
輸出
IResultObject
相關連結
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應