指令碼
概要
執行 PowerShell 腳本區塊。
語法
Script [String] #ResourceName
{
GetScript = [string]
SetScript = [string]
TestScript = [string]
[Credential = [PSCredential]]
[DependsOn = [string[]]]
[PsDscRunAsCredential = [PSCredential]]
}
描述
資源 Script
可讓您撰寫 PowerShell 程式碼,以在無法使用特定 DSC 資源時取得、測試及設定資源。 您必須提供這些方法的程式碼、處理所有相依性,並確保程式碼具有等冪性。
提示
可能的話,最佳做法是使用定義的 DSC 資源,而不是這個資源。 資源 Script
有缺點,讓測試、維護和預測更為困難。
不同于其他 DSC 資源,資源的每個屬性 Script
都是索引鍵屬性,而此資源的 Get 方法只能傳回目前狀態的單一字串。 不保證此資源會以等冪方式實作,或在任何系統上如預期般運作,因為它使用自訂程式碼。 在目標系統上叫用它,就無法進行測試。
使用 Script
資源之前,請考慮您是否可以改為 撰寫資源 。
使用定義完善的 DSC 資源可讓您的設定更容易閱讀和維護。
規格需求
無。
屬性
金鑰屬性
GetScript
指定擷取資源目前狀態的 PowerShell 腳本區塊。 叫用此資源的 Get 方法時,就會執行此 Scriptblock。
此 scriptblock 應該會傳回雜湊表,其中包含一 Result
個名為 且具有字串值的索引鍵。
Type: System.String
SetScript
指定將資源設定為所需狀態的 PowerShell 腳本區塊。 此腳本區塊會在叫用此資源的 Set 方法時執行。
此腳本區塊不應該輸出任何物件。 此腳本區塊應該以等冪方式撰寫,以便叫用 Set 方法兩次,讓目標處於與叫用一次相同的狀態。
Type: System.String
TestScript
指定 PowerShell 腳本區塊,以驗證資源是否處於所需狀態。 當叫用此資源的 Test 方法時,就會執行此腳本區塊。
如果資源處於所需狀態,且 $false
其不是預期狀態,則此腳本區塊應該會傳回 $true
。
Type: System.String
選擇性屬性
認證
視需要指定要執行 scriptblock 的帳號憑證。
Type: System.Management.Automation.PSCredential
Default Value: None
唯讀屬性
結果
GetScript腳本區塊的結果。
Type: System.String