TÓPICO about_Comment_Based_Help DESCRIÇÃO RESUMIDA Descreve como escrever tópicos da Ajuda baseados em comentários para funções e scripts. DESCRIÇÃO LONGA Você pode escrever tópicos da Ajuda baseados em comentários para funções e scripts, usando palavras-chave especiais de comentário de Ajuda. O cmdlet Get-Help exibe Ajuda baseada em comentários no mesmo formato em que exibe os tópicos da Ajuda do cmdlet que são gerados de arquivos XML. Os usuários podem utilizar todos os parâmetros de Get-Help, como Detailed, Full, Example e Online, para exibir Ajuda de funções e de script. Você também pode escrever arquivos de Ajuda baseados em XML para scripts e funções, usando palavras-chave de comentário de Ajuda, e redirecionar os usuários para um arquivo de Ajuda diferente. Este tópico explica como escrever tópicos da Ajuda para funções e scripts. Para obter informações sobre como exibir tópicos da Ajuda para funções e scripts, consulte Get-Help. SINTAXE PARA AJUDA BASEADA EM COMENTÁRIOS A sintaxe para a Ajuda baseada em comentários é a seguinte: #. <palavra-chave de ajuda> # <conteúdo da ajuda> -ou - <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> A Ajuda baseada em comentários é escrita como uma série de comentários. Você pode digitar um símbolo de comentário (#) antes de cada linha de comentários ou usar os símbolos "<#" e "#>" para criar um bloco de comentários. Todas as linhas dentro do bloco de comentários são interpretadas como comentários. Todas as linhas em um tópico da Ajuda baseado em comentários devem ser contíguas. Se um tópico da Ajuda baseado em comentários suceder um comentário que não faz parte do tópico da Ajuda, deve haver pelo menos uma linha em branco entre a última linha de comentário que não seja de Ajuda e o início da Ajuda baseada em comentários. As palavras-chave definem cada seção de Ajuda baseada em comentários. Cada palavra-chave de Ajuda baseada em comentários é precedida de um ponto (.). As palavras-chave podem aparecer em qualquer ordem. Os nomes de palavras-chave não diferenciam maiúsculas de minúsculas. Por exemplo, a palavra-chave Description precede uma descrição de uma função ou um script. <# .Description Get-Function exibe o nome e a sintaxe de todas as funções na sessão. #> O bloco de comentários precisa conter pelo menos uma palavra-chave. Algumas palavras-chave, como EXAMPLE, podem aparecer muitas vezes no mesmo bloco de comentários. O conteúdo de Ajuda de cada palavra-chave começa na linha depois da palavra-chave e pode abranger várias linhas. SINTAXE PARA AJUDA BASEADA EM COMENTÁRIOS EM FUNÇÕES A Ajuda baseada em comentários para uma função pode aparecer em um dos três seguintes locais: -- No começo do corpo da função. -- No fim do corpo da função. -- Antes da palavra-chave Function. Não pode haver mais de uma linha em branco entre a última linha da Ajuda da função e a palavra-chave Function. Por exemplo: function MyFunction { <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> <comandos de função> } -ou - function MyFunction { <comandos de função> <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> } -ou - <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> function MyFunction { } SINTAXE PARA AJUDA BASEADA EM COMENTÁRIOS EM SCRIPTS A Ajuda baseada em comentários para um script pode aparecer em um dos dois seguintes locais no script. -- No começo do arquivo de script. A Ajuda de script só pode ser precedida no script por comentários e linhas em branco. -- Se o primeiro item no corpo do script (depois da Ajuda) for uma declaração de função, deve haver pelo menos duas linhas em branco entre o fim da Ajuda de script e a declaração de função. Caso contrário, a Ajuda será interpretada como sendo para a função, não para o script. -- No fim do arquivo de script. Por exemplo: <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> function MyFunction { } -or- function MyFunction { } <# .<palavra-chave de ajuda> <conteúdo da ajuda> #> PALAVRAS-CHAVE DE AJUDA BASEADA EM COMENTÁRIOS A seguir, são apresentadas palavras-chave válidas de Ajuda baseada em comentários. Elas são listadas na ordem em que aparecem normalmente em um tópico da Ajuda, juntamente com seu uso pretendido. Essas palavras-chave aparecem em qualquer ordem na Ajuda baseada em comentários e não diferenciam maiúsculas de minúsculas. .SYNOPSIS Uma breve descrição da função ou script. Essa palavra-chave pode ser usada apenas uma vez em cada tópico. .DESCRIPTION Uma descrição detalhada da função ou do script. Essa palavra-chave pode ser usada apenas uma vez em cada tópico. .PARAMETER <Nome-Parâmetro> A descrição de um parâmetro. Você pode incluir uma palavra-chave Parameter de cada parâmetro na sintaxe da função ou do script. As palavras-chave Parameter podem aparecer em qualquer ordem no bloco de comentários, mas a sintaxe da função ou do script determina a ordem na qual os parâmetros (e suas descrições) aparecem no tópico da Ajuda. Para alterar a ordem, altere a sintaxe. Você também pode especificar uma descrição de parâmetro colocando um comentário na sintaxe da função ou do script, imediatamente antes do nome da variável de parâmetro. Se você usar tanto um comentário de sintaxe como uma palavra-chave Parameter, a descrição associada à palavra-chave Parameter será usada e o comentário de sintaxe será ignorado. .EXAMPLE Um comando de exemplo que usa a função ou o script, opcionalmente seguido por uma saída de exemplo e uma descrição. Repita essa palavra-chave para cada exemplo. .INPUTS Os tipos Microsoft .NET Framework de objetos que podem ser canalizados para a função ou o script. Você também pode incluir uma descrição dos objetos de entrada. .OUTPUTS O tipo .NET Framework dos objetos que o cmdlet retorna. Você também pode incluir uma descrição dos objetos retornados. .NOTES Informações adicionais sobre a função ou o script. .LINK O nome de um tópico relacionado. Repita essa palavra-chave para cada tópico relacionado. Esse conteúdo aparece na seção Links Relacionados do tópico da Ajuda. O conteúdo da palavra-chave Link também pode incluir um URI (Uniform Resource Identifier) para uma versão online do mesmo tópico da Ajuda. A versão online abre quando você usa o parâmetro Online de Get-Help. O URI deve começar com "http" ou "https". .COMPONENT A tecnologia ou o recurso que a função ou o script usa ou com que se relaciona. Esse conteúdo aparece quando o comando Get-Help inclui o parâmetro Component de Get-Help. .ROLE A função de usuário para o tópico da Ajuda. Esse conteúdo é exibido quando o comando Get-Help inclui o parâmetro Role de Get-Help. .FUNCTIONALITY O uso planejado da função. Esse conteúdo aparece quando o comando Get-Help inclui o parâmetro Functionality de Get-Help. .FORWARDHELPTARGETNAME <Nome-Comando> Redireciona para o tópico da Ajuda do comando especificado. Você pode redirecionar os usuários para qualquer tópico da Ajuda, inclusive tópicos da Ajuda de uma função, um script, um cmdlet ou um provedor. .FORWARDHELPCATEGORY <Categoria> Especifica a categoria da Ajuda do item em ForwardHelpTargetName. Os valores válidos são Alias, Cmdlet, HelpFile, Function, Provider, General, FAQ, Glossary, ScriptCommand, ExternalScript, Filter ou All. Use essa palavra-chave para evitar conflitos quando houver comandos com o mesmo nome. .REMOTEHELPRUNSPACE <variável-PSSession> Especifica uma sessão que contém o tópico da Ajuda. Insira uma variável que contém uma PSSession. Essa palavra-chave é usada pelo cmdlet Export-PSSession para localizar os tópicos da Ajuda para comandos exportados. .EXTERNALHELP <Caminho do arquivo de ajuda XML> Especifica o caminho de um arquivo de Ajuda baseado em XML para o script ou a função. No Windows Vista e em versões posteriores do Windows, se o caminho especificado do arquivo XML contiver subdiretórios específicos da cultura de interface do usuário, o Get-Help pesquisará um arquivo XML com o nome do script ou da função nos subdiretórios recursivamente, de acordo com padrões de fallback de idioma estabelecidos para o Windows Vista, da mesma maneira que é feito com todos os tópicos da Ajuda baseados em XML. Para obter mais informações sobre o formato de arquivo de Ajuda baseada em XML do cmdlet, consulte "How to Create Cmdlet Help" (em inglês) na biblioteca do MSDN (Microsoft Developer Network) em https://go.microsoft.com/fwlink/?LinkID=123415 (site em inglês). CONTEÚDO GERADO AUTOMATICAMENTE O nome, a sintaxe, a lista de parâmetros, a tabela de atributos do parâmetro, os parâmetros comuns e os comentários são gerados automaticamente pelo cmdlet Get-Help. Nome: A seção Nome do tópico da Ajuda de uma função é obtida do nome da função na sintaxe de função. O Nome do tópico da Ajuda de um script é obtido do nome de arquivo do script. Para alterar o nome ou sua capitalização, altere a sintaxe da função ou o nome de arquivo do script. Sintaxe: A seção Sintaxe do tópico da Ajuda é gerada pela sintaxe da função ou do script. Para adicionar detalhes à sintaxe do tópico da Ajuda, como o tipo .NET Framework de um parâmetro, adicione os detalhes à sintaxe. Se você não especificar um tipo de parâmetro, o tipo "Object" será inserido como valor padrão. Lista de parâmetros: A Lista de parâmetros no tópico da Ajuda é gerada pela sintaxe da função ou do script e pelas descrições que você adiciona usando a palavra-chave Parameters. Os parâmetros de função são mostrados na seção "Parâmetros" do tópico da Ajuda na mesma ordem que aparecem na sintaxe da função ou do script. A ortografia e a capitalização de nomes de parâmetros também são obtidas da sintaxe; elas não são afetadas pelo nome do parâmetro especificado pela palavra-chave Parameter. Parâmetros comuns: Os parâmetros comuns são adicionados à sintaxe e à lista de parâmetros do tópico da Ajuda, mesmo que não tenham efeito. Para obter mais informações sobre os parâmetros comuns, consulte about_CommonParameters. Tabela de atributos de parâmetro: Get-Help gera a tabela de atributos de parâmetro que é exibida quando você usa os parâmetros Full ou Parameter de Get-Help. O valor dos atributos de valor Required, Position e Default são obtidos da sintaxe da função ou do script. Comentários: A seção Comentários do tópico da Ajuda é automaticamente gerada pelo nome da função ou do script. Você não pode alterar ou afetar seu conteúdo. EXEMPLOS Exemplo 1: Ajuda baseada em comentários de uma função O exemplo de função a seguir inclui Ajuda baseada em comentários: function Add-Extension { param ([string]$Name,[string]$Extension = "txt") $name = $name + "." + $extension $name <# .SYNOPSIS Adiciona uma extensão de nome de arquivo a um nome fornecido. .DESCRIPTION Adiciona uma extensão de nome de arquivo a um nome fornecido. Obtém qualquer cadeia de caracteres para o nome ou a extensão do arquivo. .PARAMETER Name Especifica o nome do arquivo. .PARAMETER Extension Especifica a extensão. "Txt" é o padrão. .INPUTS Nenhum. Não é possível canalizar objetos para Add-Extension. .OUTPUTS System.String. Add-Extension retorna uma cadeia de caracteres com a extensão ou o nome de arquivo. .EXAMPLE C:\PS> extension -name "Arquivo" Arquivo.txt .EXAMPLE C:\PS> extension -name "Arquivo" -extension "doc" Arquivo.doc .EXAMPLE C:\PS> extension "Arquivo" "doc" Arquivo.doc .LINK Versão online: http://www.fabrikam.com/extension.html .LINK Set-Item #> } Os resultados são os seguintes: C:\PS> get-help add-extension -full NOME Add-Extension SINOPSE Adiciona uma extensão de nome de arquivo a um nome fornecido. SINTAXE Add-Extension [[-Name] <Cadeia de caracteres>] [[-Extension] <Cadeia de caracteres>] [<CommonParameters>] DESCRIÇÃO Adiciona uma extensão de nome de arquivo a um nome fornecido. Obtém qualquer cadeia de caracteres para o nome ou a extensão do arquivo. PARÂMETROS -Name Especifica o nome do arquivo. Necessário? false Posição? 0 Valor padrão Aceitar entrada do pipeline? false Aceitar caracteres curinga? -Extension Especifica a extensão. "Txt" é o padrão. Necessário? false Posição? 1 Valor padrão Aceitar entrada do pipeline? false Aceitar caracteres curinga? <CommonParameters> Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable, OutBuffer e -OutVariable. Para obter mais informações, digite "get-help about_commonparameters". ENTRADAS Nenhum. Não é possível canalizar objetos para Add-Extension. SAÍDAS System.String. Add-Extension retorna uma cadeia de caracteres com a extensão ou o nome de arquivo. -------------------------- EXEMPLO 1 -------------------------- C:\PS> extension -name "Arquivo" Arquivo.txt -------------------------- EXEMPLO 2 -------------------------- C:\PS> extension -name "Arquivo" -extension "doc" Arquivo.doc -------------------------- EXEMPLO 3 -------------------------- C:\PS> extension "Arquivo" "doc" Arquivo.doc LINKS RELACIONADOS Versão online: http://www.fabrikam.com/extension.html Set-Item Exemplo 2: Descrições de parâmetro na sintaxe de função Este exemplo é igual ao anterior, a não ser pelo fato de que as descrições de parâmetro são inseridas na sintaxe de função. Este formato é mais útil quando as descrições são breves. function Add-Extension { param ( [string] # Especifica o nome do arquivo. $name, [string] # Especifica a extensão do nome do arquivo. "Txt" é o padrão. $extension = "txt" ) $name = $name + "." + $extension $name <# .SYNOPSIS Adiciona uma extensão de nome de arquivo a um nome fornecido. .DESCRIPTION Adiciona uma extensão de nome de arquivo a um nome fornecido. Obtém qualquer cadeia de caracteres para o nome ou a extensão do arquivo. .INPUTS Nenhum. Não é possível canalizar objetos para Add-Extension. .OUTPUTS System.String. Add-Extension retorna uma cadeia de caracteres com a extensão ou o nome de arquivo. .EXAMPLE C:\PS> extension -name "Arquivo" Arquivo.txt .EXAMPLE C:\PS> extension -name "Arquivo" -extension "doc" Arquivo.doc .EXAMPLE C:\PS> extension "Arquivo" "doc" Arquivo.doc .LINK Versão online: http://www.fabrikam.com/extension.html .LINK Set-Item #> } Exemplo 3: Ajuda baseada em comentários de um script O exemplo de script a seguir inclui Ajuda baseada em comentários. Observe as linhas em branco entre o "#>" de fechamento e a instrução Param. Em um script que não tem uma instrução Param, precisa haver pelo menos duas linhas em branco entre o comentário final no tópico da Ajuda e a primeira declaração de função. Sem essas linhas em branco, Get-Help associa o tópico da Ajuda à função, não ao script. <# .SYNOPSIS Executa atualizações de dados mensais. .DESCRIPTION O script Update-Month.ps1 atualiza o Registro com novos dados gerados durante o mês passado e gera um relatório. .PARAMETER InputPath Especifica o caminho para o arquivo de entrada baseado em CSV. .PARAMETER OutputPath Especifica o nome e o caminho do arquivo de saída baseado em CSV. Por padrão, MonthlyUpdates.ps1 gera um nome com base na data e na hora em que é executado e salva a saída no diretório local. .INPUTS Nenhum. Você não pode canalizar objetos para Update-Month.ps1. .OUTPUTS Nenhum. Update-Month.ps1 não gera saída. .EXAMPLE C:\PS> .\Update-Month.ps1 .EXAMPLE C:\PS> .\Update-Month.ps1 -inputpath C:\Dados\Janeiro.csv .EXAMPLE C:\PS> .\Update-Month.ps1 -inputpath C:\Dados\Janeiro.csv -outputPath C:\Relatórios\2009\Janeiro.csv #> param ([string]$InputPath, [string]$OutPutPath) function Get-Data { } ... O comando a seguir obtém a Ajuda de script. Como o script não está em um diretório listado na variável de ambiente Path, o comando Get-Help que obtém a Ajuda de script precisa especificar o caminho do script. PS C:\ps-test> get-help .\update-month.ps1 -full NOME C:\ps-test\Update-Month.ps1 SINOPSE Executa atualizações de dados mensais. SINTAXE C:\ps-test\Update-Month.ps1 [-InputPath] <Cadeia de caracteres> [[-OutputPath] ]<Cadeia de caracteres>] [<CommonParameters>] DESCRIÇÃO O script Update-Month.ps1 atualiza o Registro com novos dados gerados durante o mês passado e gera um relatório. PARÂMETROS -InputPath Especifica o caminho para o arquivo de entrada baseado em CSV. Necessário? verdadeiro Posição? 0 Valor padrão Aceitar entrada do pipeline? false Aceitar caracteres curinga? -OutputPath Especifica o nome e o caminho do arquivo de saída baseado em CSV. Por padrão, MonthlyUpdates.ps1 gera um nome com base na data e na hora em que é executado e salva a saída no diretório local. Necessário? false Posição? 1 Valor padrão Aceitar entrada do pipeline? false Aceitar caracteres curinga? <CommonParameters> Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable, OutBuffer e -OutVariable. Para obter mais informações, digite "get-help about_commonparameters". ENTRADAS Nenhum. Você não pode canalizar objetos para Update-Month.ps1. SAÍDAS Nenhum. Update-Month.ps1 não gera saída. -------------------------- EXEMPLO 1 -------------------------- C:\PS> .\Update-Month.ps1 -------------------------- EXEMPLO 2 -------------------------- C:\PS> .\Update-Month.ps1 -inputpath C:\Dados\Janeiro.csv -------------------------- EXEMPLO 3 -------------------------- C:\PS> .\Update-Month.ps1 -inputpath C:\Dados\Janeiro.csv -outputPath C:\Relatórios\2009\Janeiro.csv LINKS RELACIONADOS Exemplo 4: redirecionando para um arquivo XML Você pode escrever tópicos da Ajuda baseados em XML para funções e scripts. Embora a Ajuda baseada em comentários seja mais fácil de implementar, a Ajuda baseada em XML é necessária se você deseja um controle mais preciso sobre o conteúdo de Ajuda ou se você está traduzindo tópicos da Ajuda em vários idiomas. O exemplo a seguir mostra as primeiras poucas linhas do script Update-Month.ps1. O script usa a palavra-chave ExternalHelp para especificar o caminho de um tópico da Ajuda baseado em XML para o script. # .ExternalHelp C:\MyScripts\Update-Month-Help.xml param ([string]$InputPath, [string]$OutPutPath) function Get-Data { } ... O exemplo a seguir mostra o uso da palavra-chave ExternalHelp em uma função. function Add-Extension { param ([string] $name, [string]$extension = "txt") $name = $name + "." + $extension $name # .ExternalHelp C:\ps-test\Add-Extension.xml } Exemplo 5: redirecionando para um tópico da Ajuda diferente O código a seguir é um trecho do início da função Help interna no Windows PowerShell, que exibe uma tela de texto de Ajuda de cada vez. Como o tópico da Ajuda para o cmdlet Get-Help descreve a função Help, a função Help usa as palavras-chave ForwardHelpTargetName e ForwardHelpCategory para redirecionar o usuário para o tópico da Ajuda do cmdlet Get-Help. function help { <# .FORWARDHELPTARGETNAME Get-Help .FORWARDHELPCATEGORY Cmdlet #> [CmdletBinding (DefaultParameterSetName='AllUsersView)] param ( [Parameter(Position=0, ValueFromPipelineByPropertyName=$true)] [System.String] ${Name}, ... O comando a seguir usa este recurso: C:\PS> get-help help NOME Get-Help SINOPSE Exibe informações sobre cmdlets e conceitos do Windows PowerShell. ... CONSULTE TAMBÉM about_Functions about_Functions_Advanced_Parameters about_Scripts "Como escrever ajuda de cmdlet" (https://go.microsoft.com/fwlink/?LinkID=123415)