Import-PowerShellDataFile
Импортирует значения из файла .psd1
без вызова его содержимого.
Синтаксис
ByPath (по умолчанию)
Import-PowerShellDataFile
[-Path] <String[]>
[-SkipLimitCheck]
[<CommonParameters>]
ByLiteralPath
Import-PowerShellDataFile
[-LiteralPath] <String[]>
[-SkipLimitCheck]
[<CommonParameters>]
Описание
Командлет 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
Путь к импортируемму файлу. Все символы в пути рассматриваются как литеральные значения. Подстановочные знаки не обрабатываются.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | PSPath, LP |
Наборы параметров
ByLiteralPath
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-Path
Путь к импортируемму файлу. Подстановочные знаки разрешены, но импортируются только первый соответствующий файл.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | True |
DontShow: | False |
Наборы параметров
ByPath
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-SkipLimitCheck
По умолчанию Import-PowerShellDataFile
импортирует только 500 ключей из файла .psd1
. Используйте SkipLimitCheck для импорта более 500 ключей.
Свойства параметра
Тип: | Switch |
Default value: | False |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
All
Position: | 0 |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Выходные данные
Hashtable
Этот командлет возвращает данные из файла в виде хэш-таблицы.