Поделиться через


about_Updatable_Help

Краткое описание

Описывает обновляемую систему справки в PowerShell.

Длинное описание

PowerShell предоставляет несколько различных способов доступа к наиболее up-toразделам справки по дате и командлетам PowerShell.

Обновляемая система справки, представленная в PowerShell 3.0, предназначена для обеспечения того, чтобы вы всегда имели новейшие разделы справки на локальном компьютере, чтобы их можно было прочитать в командной строке. Это упрощает скачивание и установку файлов справки и их обновление всякий раз, когда новые файлы справки становятся доступными.

Чтобы предоставить обновляемую справку для нескольких компьютеров в организации и для компьютеров, которые не имеют доступа к Интернету, функция обновляемой справки позволяет скачать файлы справки в директорию файловой системы или сетевую папку, а затем установить файлы справки из сетевой папки.

В 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 отображает автоматически сгенерированную помощь и предлагает скачать файлы помощи или прочитать их в Интернете.

Автоматическая справка включает синтаксис и псевдонимы, а также примечания, которые объясняют использование командлетов обновляемой справки и доступ к разделам онлайн-справки.

Например, следующая команда получает базовую справку для командлета 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 и Save-Help имеют параметр UseDefaultCredentials, предоставляющий явные учетные данные текущего пользователя. Этот параметр предназначен для доступа к безопасным расположениям в Интернете.

Командлеты Update-Help и Save-Help также имеют параметр credential, который позволяет выполнять команду на удаленном компьютере и получать доступ к общей папке на третьем компьютере. Параметр учетных данных действителен только при использовании параметров SourcePath или LiteralPathUpdate-Help и DestinationPath или ЛитерPath параметров Save-Help.

Установка и обновление файлов справки

Чтобы скачать и установить файлы справки впервые или для обновления файлов справки на компьютере, используйте командлет Update-Help.

Командлет Update-Help выполняет всю сложную работу за вас, включая следующие задачи.

  • Определяет, какие модули поддерживают обновляемую справку.
  • Находит расположение в Интернете, в котором каждый модуль хранит свои обновляемые файлы справки.
  • Сравнивает файлы справки для каждого модуля на компьютере с новыми файлами справки, доступными для каждого модуля.
  • Загружает новые файлы из Интернета.
  • Распаковывает пакет справочного файла.
  • Проверяет, являются ли файлы допустимыми справочными.
  • Устанавливает файлы справки в подкаталоге для конкретного языка внутри каталога модуля.

Чтобы получить доступ к новым разделам справки, используйте командлет Get-Help. Вам не нужно перезапустить PowerShell.

Чтобы установить или обновить справку для всех модулей на компьютере с поддержкой функции обновляемой справки, введите:

Update-Help

Чтобы обновить справку для определенных модулей, добавьте параметр модуляUpdate-Help. Подстановочные знаки разрешены в имени модуля.

Например, чтобы обновить справку по модулю 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 для поиска оптимально поддерживаемого языка.

Однако можно использовать параметры UICulture командлетов Update-Help и Save-Help, чтобы скачать и установить файлы справки для любых доступных языков и региональных параметров пользовательского интерфейса.

Например, чтобы сохранить самые новые файлы справки для всех модулей на сеансе на японском языке (ja-JP) и французском (fr-FR), введите:

Save-Help -Path \Server\Share -UICulture ja-JP, fr-FR

Если файлы справки для модулей недоступны на указанных языках, Update-Help и Save-Help командлеты возвращают сообщение об ошибке, в котором перечислены языки, в которых доступна помощь для каждого модуля, чтобы выбрать альтернативу, которая лучше всего соответствует вашим потребностям.

Заметка

В настоящее время обновляемое содержимое справки публикуется только на английском языке (en-US).

Использование веб-справки

Если вы не можете или не хотите обновлять файлы справки на локальном компьютере, вы по-прежнему можете получить самые новые файлы справки в Интернете.

Чтобы открыть раздел справки в режиме онлайн для любого командлета или функции, используйте параметр Online командлета Get-Help.

Например, следующая команда открывает онлайн-справку для командлета Get-Job в браузере по умолчанию:

Get-Help Get-Job -Online

Чтобы получить онлайн-справку для скрипта, используйте параметр Online и полный путь к скрипту.

Параметр Online не работает с разделами About. Дополнительные сведения о разделах PowerShell, включая разделы справки по языку PowerShell, см. в разделе о разделах PowerShell.

Как свести к минимуму или предотвратить скачивание в Интернете

Чтобы свести к минимуму загрузки из Интернета и предоставить обновляемую помощь пользователям, которые не подключены к Интернету, используйте командлет Save-Help. Скачайте справку из Интернета и сохраните ее в сетевое хранилище. Затем создайте параметр групповой политики или запланированное задание, которое запускает команду Update-Help на всех компьютерах. Задайте значение параметра SourcePath командлета Update-Help сетевой общей папке.

Чтобы запретить пользователям, у которых есть доступ к Интернету, скачать обновляемую справку из Интернета, используйте задать исходный путь по умолчанию для параметра групповой политики update-Help.

Этот параметр групповой политики неявно добавляет параметр SourcePath с указанным расположением файловой системы в каждую команду Update-Help на каждом затронутом компьютере. Пользователи могут использовать параметр SourcePath явным образом, чтобы указать другое расположение файловой системы, но они не могут исключить параметр SourcePath и загрузить справку из Интернета.

Заметка

Задать путь к источнику по умолчанию для параметра групповой политики Update-Help отображается в разделе Конфигурация компьютера и Конфигурация пользователя. Однако эффективен только параметр политики в разделе "Конфигурация компьютера". Параметр политики в пользовательской конфигурации игнорируется.

Дополнительные сведения см. в about_Group_Policy_Settings.

Как обновить справку по нестандартным модулям

Чтобы обновить или сохранить справку для модуля, который не отображается параметром ListAvailable командлета Get-Module, импортируйте модуль в текущий сеанс перед выполнением команды Update-Help или Save-Help. На удаленном компьютере перед выполнением Save-Help команды импортируйте модуль в текущий сеанс или Invoke-Command скриптблок, подключенный к удаленному компьютеру.

Если модуль находится в текущем сеансе, выполните командлеты Update-Help или Save-Help без параметров или используйте параметр module, чтобы указать имя модуля.

Параметры модуля . Они не принимают путь к файлу модуля.

Используйте этот метод, чтобы обновить или сохранить справку для любого модуля, который не возвращается параметром ListAvailable командлета Get-Module, например, модуль, установленный в расположении, которое не указано в переменной среды $Env:PSModulePath, или модуль, который не имеет корректного формата (каталог модулей не содержит по крайней мере один файл, основное имя которого совпадает с именем каталога).

Как поддерживать обновляемую справку

Если вы создаете модуль, вы можете обеспечивать онлайн-справку и обновляемую справку для своих модулей. Дополнительные сведения см. в статьях Поддержка обновляемой справки и Поддержка онлайн-справки.

Обновляемая справка недоступна для оснастки PowerShell или справки на основе комментариев.

Замечания

Командлеты Update-Help и Save-Help не поддерживаются в среде предварительной установки Windows (Windows PE).

См. также