Save-Help
Загружает и сохраняет новейшие файлы справки в каталог файловой системы.
Синтаксис
Path (по умолчанию)
Save-Help
[-DestinationPath] <String[]>
[[-Module] <PSModuleInfo[]>]
[[-UICulture] <CultureInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
LiteralPath
Save-Help
[[-Module] <PSModuleInfo[]>]
[[-UICulture] <CultureInfo[]>]
-LiteralPath <String[]>
[-FullyQualifiedModule <ModuleSpecification[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Описание
Командлет Save-Help
скачивает новейшие файлы справки для модулей PowerShell и сохраняет их в указанный каталог. Эта функция позволяет обновлять файлы справки на компьютерах, у которых нет доступа к Интернету, и упрощает обновление файлов справки на нескольких компьютерах. Этот командлет был введён в Windows PowerShell 3.0.
Начиная с Windows PowerShell 4.0, можно скачать Save-Help
файлы справки для модулей, установленных на удаленных компьютерах. Кроме того, можно сохранить объект PSModuleInfo на Export-Clixml
компьютере, который не имеет доступа к Интернету, импортировать объект на компьютере с доступом к Интернету, а затем запустить Save-Help
его в объекте PSModuleInfo . После сохранения справки его можно скопировать на удаленный компьютер и установить его, выполнив команду Update-Help
.
Этот процесс можно использовать для установки справки на компьютерах, у которых нет доступа к сети.
Без параметров Save-Help
команда загружает последнюю справку для всех модулей в сеансе и для модулей, установленных на компьютере в расположении, указанном в переменной среды PSModulePath . Это действие пропускает модули, которые не поддерживают обновляемую справку без предупреждения.
Командлет Save-Help
проверяет версию всех файлов справки в конечной папке. Если доступны более новые файлы справки, этот командлет скачивает самые новые файлы справки из Интернета, а затем сохраняет их в папке. Командлет Save-Help
работает так же, как Update-Help
командлет, за исключением того, что он сохраняет скачанный контент, а не извлекает файлы справки и устанавливает их на компьютере.
Сохраненная справка для каждого модуля состоит из одного файла справки (HelpInfo XML) и шкафа или ZIP-архива (.cab
или .zip
) для файлов справки на каждом языке. В Windows команда скачивает файлы шкафа. В Linux и macOS команда скачивает ZIP-файлы.
Чтобы сохранить файлы справки для модулей в папке установки PowerShell ($PSHOME\Modules
), запустите PowerShell с помощью параметра "Запуск от имени администратора". Чтобы скачать файлы справки для этих модулей, необходимо быть членом группы администраторов на компьютере.
Чтобы установить сохраненные файлы справки, выполните команду Update-Help
с параметром SourcePath , чтобы указать папку, содержащую сохраненные файлы справки.
Update-Help
извлекает файлы справки из архива и устанавливает их в соответствующем расположении.
Примеры
Пример 1. Сохранение справки для модуля DhcpServer
В этом примере показаны три разных способа Save-Help
сохранения справки для модуля DhcpServer с клиентского компьютера, подключенного к Интернету, без установки модуля DhcpServer или роли DHCP-сервера на локальном компьютере.
# Option 1:
# 1. Run Invoke-Command to get the PSModuleInfo object for the DhcpServer module,
# 2. Save-Help on the PSModuleInfo object to save the help files to a folder on
# the local computer.
$mod = Invoke-Command -ComputerName RemoteServer -ScriptBlock {
Get-Module -Name DhcpServer -ListAvailable
}
Save-Help -Module $mod -DestinationPath C:\SavedHelp
# Option 2:
# 1. Open a PSSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$session = New-PSSession -ComputerName "RemoteServer"
$mod = Get-Module -PSSession $session -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath C:\SavedHelp
# Option 3:
# 1. Open a CimSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$cimsession = New-CimSession -ComputerName "RemoteServer"
$mod = Get-Module -CimSession $cimsession -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath "C:\SavedHelp"
Пример 2. Установка справки по модулю DhcpServer
В этом примере показано, как установить справку для компьютера, который не подключен к сети. В этом примере первый компьютер не подключен к доступной сети. Файлы должны быть скопированы в него с помощью съемных носителей. Второй компьютер подключен к Интернету и может скачать файлы справки.
# On the first computer, get the PSModuleInfo object for the module and save it to
# removable media.
Get-Module -Name "DhcpServer" -ListAvailable |
Export-CliXml -Path E:\UsbFlashDrive\DhcpModule.xml
# Move the removable media to a computer that has internet access, and then import the
# PSModuleInfo object. Run Save-Help on the imported PSModuleInfo object and save the help
# files to the removable media.
$moduleInfo = Import-CliXml E:\UsbFlashDrive\DhcpModule.xml
Save-Help -Module $moduleInfo -DestinationPath E:\UsbFlashDrive\SavedHelp
# Finally, move the removable media back to the first computer and install the help.
Update-Help -Module DhcpServer -SourcePath E:\UsbFlashDrive\SavedHelp
Пример 3. Сохранение справки для всех модулей
Эта команда скачивает новейшие файлы справки для всех модулей на локальном компьютере. Он сохраняет файлы справки в папке \\Server01\Fileshare01
.
Save-Help -DestinationPath \\Server01\FileShare01
Пример 4. Сохранение справки по модулю на компьютере
Эта команда скачивает самые новые файлы справки для модуля ServerManager , а затем сохраняет их в папке \\Server01\Fileshare01
.
$saveHelpSplat = @{
Module = 'ServerManager'
DestinationPath = '\\Server01\FileShare01'
Credential = 'Domain01/Admin01'
}
Save-Help @saveHelpSplat
При установке модуля на компьютере можно ввести имя модуля в качестве значения параметра модуля , даже если модуль не импортируется в текущий сеанс.
Команда использует параметр Credential для предоставления учетных данных пользователя, имеющего разрешение на запись в общую папку.
Пример 5. Сохранение справки для модуля на другом компьютере
Эти команды загружают самые новые файлы справки для модуля CustomSQL и сохраняют их в папке \\Server01\Fileshare01
.
Invoke-Command -ComputerName Server02 { Get-Module -Name CustomSQL -ListAvailable } |
Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01
Так как модуль CustomSQL не установлен на компьютере, последовательность содержит Invoke-Command
команду, которая получает объект модуля для модуля CustomSQL с компьютера Server02, а затем передает объект модуля командлету Save-Help
.
Если модуль не установлен на компьютере, Save-Help
требуется объект модуля, содержащий сведения о расположении новейших файлов справки.
Пример 6. Сохранение справки по модулю на нескольких языках
Эта команда сохраняет справку для основных модулей PowerShell в четырех разных языках и региональных параметрах пользовательского интерфейса. Языковые пакеты для этих языковых стандартов не должны быть установлены на компьютере.
$saveHelpSplat = @{
Module = 'Microsoft.PowerShell*'
UICulture = 'de-DE', 'en-US', 'fr-FR', 'ja-JP'
DestinationPath = "D:\Help"
}
Save-Help @saveHelpSplat
Save-Help
может скачать файлы справки для модулей в разных языках и региональных параметрах пользовательского интерфейса, только если владелец модуля делает переведенные файлы доступными в Интернете.
Пример 7. Сохранение справки несколько раз в день
Эта команда сохраняет справку для всех модулей, установленных на компьютере. Команда задает параметр Force для переопределения правила, которое запрещает Save-Help
командлету загружать справку более одного раза в течение каждого 24-часового периода.
Save-Help -Force -DestinationPath \\Server3\AdminShare\Help
Параметр Force также переопределяет ограничение в 1 ГБ и обходит проверку версий. Таким образом, файлы можно скачать, даже если версия не более поздней версии в целевой папке.
Команда использует Save-Help
командлет для скачивания и сохранения файлов справки в указанной папке.
Параметр Force требуется при выполнении Save-Help
команды более одного раза в день.
Параметры
-Credential
Указывает учетные данные пользователя. Этот командлет выполняет команду с помощью учетных данных пользователя, имеющего разрешение на доступ к расположению файловой системы, указанному параметром DestinationPath . Этот параметр действителен, только если параметр DestinationPath или LiteralPath используется в команде.
Этот параметр позволяет выполнять Save-Help
команды, использующие параметр DestinationPath на удаленных компьютерах. Предоставив явные учетные данные, вы можете выполнить команду на удаленном компьютере и получить доступ к общей папке на третьем компьютере, не столкнувшись с ошибкой доступа или используя проверку подлинности CredSSP для делегирования учетных данных.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, созданный командлетом Get-Credential
. Если ввести имя пользователя, вам будет предложено ввести пароль.
Учетные данные хранятся в объекте PSCredential, а пароль хранится в виде SecureString.
Замечание
Дополнительные сведения о защите данных SecureString см. в разделе Как безопасно SecureString?.
Свойства параметра
Тип: | PSCredential |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-DestinationPath
Указывает путь к папке, в которой сохраняются файлы справки. Не указывайте расширение имени файла или имени файла.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | Путь |
Наборы параметров
Path
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-Force
Указывает, что этот командлет не соответствует ограничению один раз в день, пропускает проверку версий и загружает файлы, превышающие ограничение в 1 ГБ.
Без этого параметра только одна Save-Help
команда для каждого модуля разрешена в течение каждого 24-часового периода, скачивание ограничено 1 ГБ несжатого содержимого для каждого модуля, а файлы справки для модуля устанавливаются только в том случае, если они более новые, чем файлы на компьютере.
Однократное ограничение защищает серверы, в которых размещены файлы справки, и делает его практическим для добавления Save-Help
команды в профиль PowerShell.
Чтобы сохранить справку для модуля в нескольких языках и региональных параметрах пользовательского интерфейса без параметра Force , включите все региональные параметры пользовательского интерфейса в одну команду, например: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Свойства параметра
Тип: | SwitchParameter |
Default value: | False |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-FullyQualifiedModule
Это значение может быть именем модуля, полной спецификацией модуля или путем к файлу модуля.
Если значение является путем, путь может быть полностью или относительным. Относительный путь разрешается относительно скрипта, содержащего инструкцию using.
Если значение является спецификацией имени или модуля, PowerShell выполняет поиск PSModulePath для указанного модуля.
Спецификация модуля — это хэш-файл, имеющий следующие ключи.
-
ModuleName
- Обязательный Указывает имя модуля. -
GUID
- Необязательный указывает GUID модуля. - Это также Обязательный, чтобы указать хотя бы один из трех приведенных ниже ключей.
-
ModuleVersion
. Указывает минимальную допустимую версию модуля. -
MaximumVersion
. Указывает максимальную допустимую версию модуля. -
RequiredVersion
. Указывает точную, требуемую версию модуля. Это невозможно использовать с другими ключами версии.
-
Параметр FullyQualifiedModule нельзя указать в той же команде, что и параметр module. два параметра являются взаимоисключающими.
Свойства параметра
Тип: | |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-LiteralPath
Указывает путь к целевой папке. В отличие от значения параметра DestinationPath , значение параметра LiteralPath используется точно так же, как и типизированный параметр. Ни один символ не интерпретируется как подстановочный знак. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки указывают PowerShell на то, что не следует интерпретировать какие-либо символы как управляющие последовательности.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | PSPath, LP |
Наборы параметров
LiteralPath
Position: | Named |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-Module
Указывает модули, для которых эта справка по скачиванию командлета. Введите один или несколько имен модулей в разделенном запятыми списке или в файле с одним именем модуля в каждой строке. Разрешено использование подстановочных символов. Можно также передать объекты модуля из командлета Get-Module
Save-Help
в .
По умолчанию Save-Help
скачивает справку для всех модулей, поддерживающих обновляемую справку, и устанавливается на локальном компьютере в расположении, указанном в переменной среды PSModulePath .
Чтобы сохранить справку для модулей, которые не установлены на компьютере, выполните Get-Module
команду на удаленном компьютере. Затем передайте полученные объекты модуля командлету или отправьте объекты Save-Help
модуля в качестве значения параметров Module или InputObject .
Если указанный модуль установлен на компьютере, можно ввести имя модуля или объект модуля. Если модуль не установлен на компьютере, необходимо ввести объект модуля, например объект модуля, возвращенный командлетом Get-Module
.
Параметр модуля командлета Save-Help
не принимает полный путь к файлу модуля или файлу манифеста модуля. Чтобы сохранить справку для модуля, который не находится в расположении PSModulePath , импортируйте модуль в текущий сеанс перед выполнением Save-Help
команды.
Значение "*" (все) пытается обновить справку для всех модулей, установленных на компьютере. К ним относятся модули, которые не поддерживают обновляемую справку. Это значение может привести к ошибкам при обнаружении модулей, которые не поддерживают обновляемую справку.
Свойства параметра
Тип: | |
Default value: | None |
Поддерживаются подстановочные знаки: | True |
DontShow: | False |
Aliases: | Имя |
Наборы параметров
(All)
Position: | 1 |
Обязательно: | False |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-Scope
Этот параметр ничего не делает в этом командлете.
Свойства параметра
Тип: | UpdateHelpScope |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-UICulture
Указывает значения языка и региональных параметров пользовательского интерфейса, для которых этот командлет получает обновленные файлы справки. Введите один или несколько кодов языка, например es-ES
, переменную, содержащую объекты и региональные параметры, или команду, которая получает объекты языка и региональных параметров, например команду Get-Culture
или Get-UICulture
. Подстановочные знаки не разрешены.
По умолчанию Save-Help
получает файлы справки в наборе языка и региональных параметров пользовательского интерфейса для операционной системы или его резервного языка и региональных параметров. Если указать параметр UICulture, Save-Help
только ищет справку по указанному языку.
Начиная с PowerShell 7.4, можно использовать частичный языковой код, например en
для скачивания справки на английском языке для любого региона.
Свойства параметра
Тип: | |
Default value: | Current UI culture |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | 2 |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-UseDefaultCredentials
Указывает, что этот командлет выполняет команду, включая веб-загрузку, с учетными данными текущего пользователя. По умолчанию команда выполняется без явных учетных данных.
Этот параметр действует только в том случае, если веб-загрузка использует ntLM, согласование или проверку подлинности на основе Kerberos.
Свойства параметра
Тип: | SwitchParameter |
Default value: | False |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
PSModuleInfo
Объект модуля можно передать в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные.
Примечания
- Чтобы сохранить справку по модулям в папке $PSHOME\Modules, запустите PowerShell с помощью параметра "Запуск от имени администратора". Только члены группы "Администраторы" на компьютере могут скачать справку по модулям в папке $PSHOME\Modules.
- Сохраненная справка для каждого модуля состоит из одного файла справки (HelpInfo XML) и одного шкафа (.cab) для файлов справки для каждого языка и региональных параметров пользовательского интерфейса. Вам не нужно извлекать файлы справки из файла шкафа. Командлет
Update-Help
извлекает файлы справки, проверяет XML, а затем устанавливает файлы справки и файл сведений справки в вложенную папку модуля для конкретного языка. - Командлет
Save-Help
может сохранить справку для модулей, которые не установлены на компьютере. Однако, так как файлы справки установлены в папке модуля,Update-Help
командлет может установить обновленный файл справки только для модулей, установленных на компьютере. - Если
Save-Help
не удается найти обновленные файлы справки для модуля или не удается найти обновленные файлы справки на указанном языке, он продолжается без отображения сообщения об ошибке. Чтобы узнать, какие файлы были сохранены командой, укажите подробный параметр. - Модули — это наименьшая единица обновляемой справки. Не удается сохранить справку для определенного командлета только для всех командлетов в модуле. Чтобы найти модуль, содержащий определенный командлет, используйте свойство ModuleName вместе с командлетом
Get-Command
, например(Get-Command \<cmdlet-name\>).ModuleName
-
Save-Help
поддерживает все модули и основные оснастки PowerShell. Она не поддерживает другие оснастки. - Командлеты
Update-Help
иSave-Help
используют следующие порты для скачивания файлов справки: порт 80 для HTTP и порта 443 для HTTPS. - Командлеты
Update-Help
иSave-Help
не поддерживаются в среде предварительной установки Windows (Windows PE).