Import-PowerShellDataFile
從檔案匯 .PSD1
入值,而不叫用其內容。
Syntax
Import-PowerShellDataFile
[-Path] <String[]>
[-SkipLimitCheck]
[<CommonParameters>]
Import-PowerShellDataFile
[-LiteralPath] <String[]>
[-SkipLimitCheck]
[<CommonParameters>]
Description
Cmdlet Import-PowerShellDataFile
會從檔案中 .PSD1
定義的哈希表安全地匯入索引鍵/值組。 這些值可以使用 檔案的內容來匯入 Invoke-Expression
。
不過, Invoke-Expression
執行檔案中包含的任何程序代碼。 這可能會產生不必要的結果,或執行不安全的程序代碼。 Import-PowerShellDataFile
會匯入數據,而不叫用程序代碼。 根據預設,有 500 個密鑰限制,但可以使用 SkipLimitCheck 參數略 過此限制。
範例
範例 1:從 PSD1 擷取值
此範例會擷取儲存在檔案內之哈希表中的 Configuration.psd1
索引鍵/值組。 Get-Content
用來顯示檔案的內容 Configuration.psd1
。
Get-Content .\Configuration.psd1
$config = Import-PowerShellDataFile .\Configuration.psd1
$config.AllNodes
@{
AllNodes = @(
@{
NodeName = 'DSC-01'
}
@{
NodeName = 'DSC-02'
}
)
}
Name Value
---- -----
NodeName DSC-01
NodeName DSC-02
參數
-LiteralPath
要匯入之檔案的路徑。 路徑中的所有字元都會被視為常值。 不會處理通配符。
Type: | String[] |
Aliases: | PSPath, LP |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
要匯入之檔案的路徑。 允許通配符,但只會匯入第一個相符的檔案。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-SkipLimitCheck
根據預設 Import-PowerShellDataFile
,只會從檔案匯入 500 個 .psd1
金鑰。 使用 SkipLimitCheck 匯入超過 500 個密鑰。
Type: | Switch |
Position: | 0 |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸出
此 Cmdlet 會以哈希表的形式從檔案傳回數據。