Как читать синтаксис документации PowerShell

636
Kolob Canyon

Я мог бы использовать хорошее объяснение синтаксиса документации PowerShell:

> man Update-Help

SYNTAX Update-Help [[-Module] <string[]>] [[-SourcePath] <string[]>] [[-UICulture] <cultureinfo[]>] [-Recurse] [-Credential <pscredential>] [-UseDefaultCredentials]  [-Force] [<CommonParameters>]  Update-Help [[-Module] <string[]>] [[-UICulture] <cultureinfo[]>] [-LiteralPath <string[]>] [-Recurse] [-Credential <pscredential>] [-UseDefaultCredentials]  [-Force] [<CommonParameters>] 

Поэтому я попытался обновить человека:

> Update-Help Get-ChildItem

Ошибка:

Update-Help : No Windows PowerShell modules were found that match the following pattern: Get-ChildItem. Verify the pattern and then try the command again.At line:1  char:1 + Update-Help Get-ChildItem + ~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (Get-ChildItem:String) [Update-Help], Exception + FullyQualifiedErrorId : ModuleNotFound,Microsoft.PowerShell.Commands.UpdateHelpCommand 

В частности, я хочу знать, какие параметры являются обязательными, каков тип этих параметров и должны ли они прийти в определенном порядке?

0

1 ответ на вопрос

1
Zoredache

man Update-Help

Во-первых, имейте в виду, что man (на самом деле Get-Help) не покажет вам полную справку, которая доступна для командлета по умолчанию. Основной вывод просто не дает вам то, что вам нужно, в удобном для чтения виде.

Если вы используете Get-Help Update-Help -onlineили Get-Help Update-Help -ShowWindowвы получите гораздо больше деталей. Один бит информации представляет собой список каждого параметра, их положение (если они могут использоваться без -param), если это обязательно, значение по умолчанию и так далее.

Вы также можете получить подробную информацию о конкретном параметре напрямую, используя что-то вроде Get-Help update-help -Parameter module.

По- Get-Helpмоему, действительно полезная часть - это раздел примеров. get-help update-help -Examples, Как правило, это даст вам несколько примеров того, как использовать командлет.

Поскольку все документы PowerShell находятся в Интернете, вы можете просто выполнить поиск в Google / Bing, например, powershell update-helpчтобы получить ссылку на онлайн-документацию, которая полна, и, на мой взгляд, ее немного легче читать.

Обновление-Помощь Get-ChildItem

Это не удалось, потому что Get-ChildItemэто командлет, а не модуль. Вы могли бы просто сделать Update-Helpбез параметров, и это будет обновлять все. Или вы можете найти модуль, который Get-ChildItemявляется членом, и обновить этот модуль.

PS C:\users\public> get-command get-childitem  CommandType Name Version Source ----------- ---- ------- ------ Cmdlet Get-ChildItem 3.1.0.0 Microsoft.PowerShell.Management  PS C:\users\public> Update-Help -Module Microsoft.PowerShell.Management PS C:\users\public>  
Еще один удобный переключатель - `-full`. Например `Get-Help Update-Help -full | more` root 8 лет назад 1