您叫用 finder 方法時,可以使用以 XPath 查詢語言為基礎的運算式。搜尋會傳回符合 XPath 運算式的所有詳細目錄物件。如果您要查詢任何內容,可以透過字串陣列的形式將這些內容加入於搜尋指令碼。
下列 JavaScript 範例使用 VcPlugin 指令碼物件和 XPath 運算式傳回屬於 vCenter Server 受管理物件一部分而且名稱包含字串 ds 的所有資料存放區物件名稱。
var datastores = VcPlugin.getAllDatastores(null, "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
使用 Server 指令碼物件和 findAllForType finder 方法可叫用同一個 XPath 運算式。
var datastores = Server.findAllForType("VC:Datastore", "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
下列指令碼範例會傳回識別碼開頭為數字 1 的所有主機系統物件。
var hosts = VcPlugin.getAllHostSystems(null, "xpath:id[starts-with(.,'1')]"); for each (host in hosts){ System.log(host.name); }
下列指令碼會傳回名稱包含大寫或小寫字母字串 DC 的所有資料中心物件名稱和識別碼。指令碼也會擷取標記內容。
var datacenters = VcPlugin.getAllDatacenters(['tag'], "xpath:name[contains(translate(., 'DC', 'dc'), 'dc')]"); for each (datacenter in datacenters){ System.log(datacenter.name + " " + datacenter.id); }