about_Updatable_Help
Краткое описание
Описывает обновляемую систему справки в PowerShell.
Подробное описание
PowerShell предоставляет несколько различных способов доступа к наиболее актуальным разделам справки по командлетам и концепциям PowerShell.
Обновляемая система справки, представленная в PowerShell 3.0, предназначена для обеспечения того, чтобы вы всегда имели новейшие разделы справки на локальном компьютере, чтобы их можно было прочитать в командной строке. Это упрощает скачивание и установку файлов справки и их обновление всякий раз, когда новые файлы справки становятся доступными.
Чтобы предоставить обновленную справку для нескольких компьютеров в организации и для компьютеров, которые не имеют доступа к Интернету, updatable Help позволяет скачать файлы справки в каталог файловой системы или общую папку, а затем установить файлы справки из общей папки.
В PowerShell 4.0 свойство HelpInfoUri сохраняется через удаленное взаимодействие Windows PowerShell, которое позволяет Save-Help
работать с модулями, установленными на удаленном компьютере, но не обязательно устанавливать на локальном компьютере. Вы можете сохранить объект PSModuleInfo на диск или съемный носитель (например, USB-диск), выполнив на Export-Clixml
компьютере, который не имеет доступа к Интернету, импортируя объект PSModuleInfo на компьютере с доступом к Интернету, а затем запущен Save-Help
на объекте PSModuleInfo. Сохраненную справку можно скопировать на удаленный, отключенный компьютер с помощью съемных носителей, а затем установить с помощью запуска Update-Help
. Эти улучшения в Save-Help
функциональных возможностях позволяют установить справку на компьютерах без какого-либо сетевого доступа. Пример использования новых Save-Help
функций см. в разделе "Как обновить справку из общей папки" в этом разделе.
Обновляемая справка также поддерживает онлайн-доступ к новым разделам справки и базовой справке для командлетов, даже если на компьютере нет файлов справки.
PowerShell не предоставляет файлы справки. Вы можете установить файлы справки для всех команд, включенных по умолчанию в PowerShell и для всех модулей Windows, с помощью функции "Обновляемая справка".
Обновляемые командлеты справки
Update-Help
: загружает самые новые файлы справки из Интернета или общей папки и устанавливает их на локальном компьютере.Save-Help
: загружает самые новые файлы справки из Интернета и сохраняет их в каталоге файловой системы или общей папке. Чтобы установить файлы справки на компьютерах, используйтеUpdate-Help
.Get-Help
: отображает разделы справки в командной строке. Получает справку из файлов справки на компьютере. Отображает автоматическую справку для командлетов и функций, у которых нет файлов справки. Открывает разделы справки по сети для командлетов, функций, сценариев и рабочих процессов в браузере интернета по умолчанию.
Автоматическая помощь: справка без файлов справки
Если у вас нет файла справки для командлета, функции или рабочего процесса на компьютере, Get-Help
командлет отображает автоматически созданную справку и предложит скачать файлы справки или прочитать их в Интернете.
Автоматическая справка включает синтаксис и псевдонимы, а также примечания, которые объясняют использование командлетов справки updatable и доступа к разделам справки в Интернете.
Например, следующая команда получает базовую справку для командлета Get-Culture
. В выходных данных отображается Get-Help
отображение, если на компьютере нет файлов справки.
Get-Help Get-Culture
NAME
Get-Culture
SYNTAX
Get-Culture [<CommonParameters>]
ALIASES
None
REMARKS
To get the latest Help content including descriptions and examples
type: Update-Help.
Файлы справки для модулей
Наименьшая единица обновляемой справки — это справка по модулю. Справка по модулю включает справку по всем командлетам, функциям, рабочим процессам, поставщикам, сценариям и понятиям в модуле. Вы можете обновить справку для всех модулей, установленных на компьютере, даже если они не импортируются в текущий сеанс.
Вы можете обновить справку по всему модулю, но не удается обновить справку по отдельным командлетам.
Чтобы найти модуль, содержащий определенный командлет, используйте следующий формат команды:
(Get-Command <cmdlet-name>).ModuleName
Например, чтобы найти модуль, содержащий Set-ExecutionPolicy
командлет, введите:
(Get-Command Set-ExecutionPolicy).ModuleName
Чтобы обновить справку для конкретного модуля, введите следующее:
Update-Help -Module <ModuleName>
Например, чтобы обновить справку для модуля, содержащего командлет Set-ExecutionPolicy, введите:
Update-Help -Module Microsoft.PowerShell.Security
Разрешения для обновляемой справки
Чтобы обновить справку по модулям в каталоге $pshome/Modules
, необходимо быть членом группы администраторов на компьютере.
Если вы не входите в группу администраторов, вы не можете обновить справку по этим модулям; но если у вас есть доступ к Интернету, вы можете просмотреть справку в Интернете.
Обновление справки по модулям в каталоге $HOME/Documents/PowerShell/Modules
или модулях в других подкаталогах $HOME
каталога не требует специальных разрешений.
Командлеты Update-Help
имеют параметр UseDefaultCredentials, предоставляющий явные учетные данные текущего Save-Help
пользователя. Этот параметр предназначен для доступа к безопасным расположениям в Интернете.
У Update-Help
командлетов также Save-Help
есть параметр Credential , позволяющий выполнять команду на удаленном компьютере и получать доступ к общей папке на третьем компьютере. Параметр Credential действителен только при использовании параметров Update-Help
SourcePath или LiteralPath, а также параметров Save-Help
DestinationPath или LiteralPath.
Установка и обновление файлов справки
Чтобы скачать и установить файлы справки в первый раз или обновить файлы справки на компьютере, используйте Update-Help
командлет.
Командлет Update-Help
выполняет все сложные задачи, включая следующие задачи.
- Определяет, какие модули поддерживают обновляемую справку.
- Находит расположение в Интернете, в котором каждый модуль хранит свои обновляемые файлы справки.
- Сравнивает файлы справки для каждого модуля на компьютере с новыми файлами справки, доступными для каждого модуля.
- Загружает новые файлы из Интернета.
- Распаковывает пакет файла справки.
- Проверяет, являются ли файлы справки допустимыми.
- Устанавливает файлы справки в подкаталоге для конкретного языка каталога модуля.
Чтобы получить доступ к новым разделам справки, используйте Get-Help
командлет. Вам не нужно перезапустить PowerShell.
Чтобы установить или обновить справку для всех модулей на компьютере, поддерживающего обновляемую справку, введите:
Update-Help
Чтобы обновить справку для определенных модулей, добавьте параметр Update-Help
module . Подстановочные знаки разрешены в имени модуля.
Например, чтобы обновить справку по модулю ServerManager, введите следующее:
Update-Help -Module ServerManager
Без параметров Update-Help
обновления помогают всем модулям сеанса и всем установленным модулям, поддерживающим обновляемую справку. Для включения модули должны быть установлены в каталогах, перечисленных в значении переменной среды PSModulePath. Это также модули, возвращаемые командой Get-Module -ListAvailable
.
Если значение параметра модуля равно (все), Update-Help
пытается *
обновить справку для всех установленных модулей, включая модули, которые не поддерживают обновляемую справку. Эта команда обычно создает множество ошибок, так как командлет встречает модули, которые не поддерживают обновляемую справку.
Обновление справки из общей папки
Чтобы поддерживать компьютеры, которые не подключены к Интернету, или управлять или оптимизировать обновление справки в организации, используйте Save-Help
командлет. Командлет Save-Help
загружает файлы справки из Интернета и сохраняет их в указанном каталоге файловой системы.
Save-Help
сравнивает файлы справки в указанном каталоге с новыми файлами справки, доступными для каждого модуля. Если в каталоге нет файлов справки или более новых файлов справки для модуля, Save-Help
командлет скачивает новые файлы из Интернета. Однако он не распаковывает или не устанавливает файлы справки.
Чтобы установить или обновить файлы справки на компьютере из файлов справки, сохраненных в каталоге файловой системы, используйте параметр SourcePath командлета Update-Help
. Командлет Update-Help
определяет самые новые файлы справки, распаковывает и проверяет их и устанавливает их в подкаталогах для конкретного языка каталогов модулей.
Например, чтобы сохранить справку для всех установленных модулей в \\Server\Share
каталог, введите:
Save-Help -DestinationPath \\Server\Share
Затем, чтобы обновить справку \\Server\Share
из каталога, введите:
Update-Help -SourcePath \\Server\Share
В следующих примерах показано использование справки Save-Help
для сохранения модулей, которые не установлены на локальном компьютере. В этом примере администратор запускается Save-Help
для сохранения справки для модуля DhcpServer с клиентского компьютера, подключенного к Интернету, без установки роли DHCPServer или DHCP-сервера на локальном компьютере.
Вариант 1. Выполните командуInvoke-Command
, чтобы получить объект PSModuleInfo для удаленного модуля, сохраните его в переменной$m
, а затем запустите Save-Help
объект PSModuleInfo, указав переменную $m
в качестве имени модуля.
$invokeCommandSplat = @{
ComputerName = 'RemoteServer'
ScriptBlock = { Get-Module -Name DhcpServer -ListAvailable }
}
$m = Invoke-Command @invokeCommandSplat
Save-Help -Module $m -DestinationPath C:\SavedHelp
Вариант 2. Откройте psSession, предназначенный для компьютера с модулем DHCP-сервера, чтобы получить объект PSModuleInfo для модуля, сохранить его в переменной $m
, а затем запустить Save-Help
объект, сохраненный в переменной $m
.
$s = New-PSSession -ComputerName RemoteServer
$m = Get-Module -PSSession $s -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp
Вариант 3. Откройте сеанс CIM, предназначенный для компьютера с модулем DHCP-сервера, чтобы получить объект PSModuleInfo для модуля, сохранить его в переменной $m
, а затем запустить Save-Help
объект, сохраненный в переменной $m
.
$c = New-CimSession -ComputerName RemoteServer
$m = Get-Module -CimSession $c -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp
В следующем примере администратор устанавливает справку по модулю DHCP-сервера на компьютере, который не имеет сетевого доступа.
Сначала выполните экспорт Export-Clixml
объекта PSModuleInfo в общую папку или в съемный носитель.
$m = Get-Module -Name DhcpServer -ListAvailable
Export-Clixml -Path E:\UsbDrive\DhcpModule.xml -InputObject $m
Затем переведите съемный носитель на компьютер с доступом к Интернету, а затем импортируйте объект PSModuleInfo с Import-Clixml
. Выполните командуSave-Help
, чтобы сохранить справку для импортированного объекта PSModuleInfo модуля DHCPServer.
$deserialized_m = Import-Clixml E:\UsbDrive\DhcpModule.xml
Save-Help -Module $deserialized_m -DestinationPath E:\UsbDrive\SavedHelp
Наконец, переведите съемный носитель обратно на компьютер, который не имеет сетевого доступа, а затем установите справку, выполнив команду Update-Help
.
Update-Help -Module DhcpServer -SourcePath E:\UsbDrive\SavedHelp
Без параметров Save-Help
скачивает справку для всех модулей в сеансе и для всех установленных модулей, поддерживающих обновляемую справку. Для включения модули должны быть установлены в каталогах, перечисленных в значении переменной $env:PSModulePath
среды, на локальном компьютере или на удаленном компьютере, для которого требуется сохранить справку. Это также модули, возвращаемые командой Get-Help -ListAvailable
.
Обновление файлов справки на разных языках
По умолчанию Update-Help
Save-Help
и командлеты загружают справку по языку и языку пользовательского интерфейса, заданному для Windows на локальном компьютере. Если файлы справки для указанных модулей недоступны в локальном языке и региональных параметрах пользовательского интерфейса, Update-Help
и Save-Help
используйте резервные правила языка Windows, чтобы найти лучший поддерживаемый язык.
Однако можно использовать параметры Update-Help
UICulture командлетов Save-Help
для скачивания и установки файлов справки в любых языках и региональных параметрах пользовательского интерфейса, в которых они доступны.
Например, чтобы сохранить самые новые файлы справки для всех модулей в сеансе на японском языке (ja-Jp) и французском (fr-FR), введите:
Save-Help -Path \Server\Share -UICulture ja-jp, fr-fr
Если файлы справки для модулей недоступны на указанных языках, и Save-Help
командлеты возвращают сообщение об ошибке, в котором перечислены языки, в которых доступна помощь для каждого модуля, Update-Help
чтобы выбрать альтернативу, которая лучше всего соответствует вашим потребностям.
Примечание.
В настоящее время содержимое справки для обновления публикуется только на английском языке (en-US).
Использование веб-справки
Если вы не можете или не хотите обновлять файлы справки на локальном компьютере, вы по-прежнему можете получить самые новые файлы справки в Интернете.
Чтобы открыть раздел справки по сети для любого командлета или функции, используйте параметр Online командлета Get-Help
.
Например, следующая команда открывает раздел справки по сети для командлета Get-Job
в браузере интернета по умолчанию:
Get-Help Get-Job -Online
Чтобы получить справку по сети для скрипта, используйте параметр Online и полный путь к скрипту.
Параметр Online не работает с разделами About. Дополнительные сведения о темах PowerShell, включая разделы справки по языку PowerShell, см. в разделе "Разделы о PowerShell".
Как свести к минимуму или предотвратить скачивание в Интернете
Чтобы свести к минимуму скачивание в Интернет и предоставить обновляемую справку пользователям, которые не подключены к Интернету Save-Help
, используйте командлет. Скачайте справку из Интернета и сохраните ее в сетевой папке. Затем создайте параметр групповой политики или запланированное задание, которое выполняет Update-Help
команду на всех компьютерах. Задайте значение параметра Update-Help
SourcePath командлета в сетевую папку.
Чтобы запретить пользователям, у которых есть доступ к Интернету, скачать обновляемую справку из Интернета, используйте параметр групповой политики update-Help по умолчанию.
Этот параметр групповой политики неявно добавляет параметр SourcePath с указанным расположением файловой системы к каждой Update-Help
команде на каждом затронутом компьютере. Пользователи могут явно использовать параметр SourcePath для указания другого расположения файловой системы, но они не могут исключить параметр SourcePath и скачать справку из Интернета.
Примечание.
В разделе "Конфигурация компьютера и конфигурация пользователя" отображается исходный путь по умолчанию для параметра групповой политики update-Help. Однако только параметр политики в разделе "Конфигурация компьютера" действует. Параметр политики в разделе "Конфигурация пользователя" игнорируется.
Дополнительные сведения см. в статье О параметрах групповой политики.
Как обновить справку по нестандартным модулям
Чтобы обновить или сохранить справку для модуля, который не возвращается параметром Get-Module
ListAvailable командлета, импортируйте модуль в текущий сеанс перед запуском или Save-Help
командойUpdate-Help
. Перед выполнением команды перед выполнением Save-Help
команды импортируйте модуль в текущий сеанс или Invoke-Command
блок скрипта, подключенный к удаленному компьютеру.
Если модуль находится в текущем сеансе, запустите Update-Help
или Save-Help
командлеты без параметров или используйте параметр модуля для указания имени модуля.
Параметры Update-Help
модуля и Save-Help
командлеты принимают только имя модуля. Они не принимают путь к файлу модуля.
Используйте этот метод, чтобы обновить или сохранить справку для любого модуля, который не возвращается параметром Get-Module
ListAvailable командлета, например модуль, установленный в расположении, которое не указано в $env:PSModulePath
переменной среды, или модуль, который не является хорошо сформированным (каталог модуля не содержит по крайней мере один файл, базовый имя которого совпадает с именем каталога).
Как поддерживать обновляемую справку
Если вы создаете модуль, вы можете поддерживать веб-справку и обновляемую справку по модулям. Дополнительные сведения см. в статье "Поддержка обновляемой справки " и "Поддержка веб-справки".
Обновляемая справка недоступна для оснастки PowerShell или справки на основе комментариев.
Замечания
Save-Help
Командлеты Update-Help
не поддерживаются в среде предустановки Windows (Windows PE).
См. также
PowerShell