Compartilhar via


Import-IseSnippet

Importa snippets ISE para a sessão atual

Sintaxe

Import-IseSnippet
      [-Path] <String>
      [-Recurse]
      [<CommonParameters>]
Import-IseSnippet
      [-Recurse]
      -Module <String>
      [-ListAvailable]
      [<CommonParameters>]

Description

O Import-IseSnippet cmdlet importa "trechos" de texto reutilizáveis de um módulo ou diretório para a sessão atual. Os snippets estão imediatamente disponíveis para uso no ISE do Windows PowerShell. Esse cmdlet funciona apenas no ISE (Ambiente de Script Integrado) do Windows PowerShell.

Para exibir e usar os snippets importados, no menu Editar do ISE do Windows PowerShell, clique em Iniciar Snippets ou pressione Ctrl+J.

Os snippets importados estão disponíveis apenas na sessão atual. Para importar os snippets para todas as sessões do ISE do Windows PowerShell, adicione um Import-IseSnippet comando ao seu perfil do Windows PowerShell ou copie os arquivos de snippet para o diretório $HOME\Documents\WindowsPowershell\Snippetsde snippets local.

Para importar snippets, eles devem ser formatados corretamente no XML do snippet para snippets do ISE do Windows PowerShell e salvos em arquivos Snippet.ps1xml. Para criar snippets qualificados, use o New-IseSnippet cmdlet. New-IseSnippet cria um <SnippetTitle>.Snippets.ps1xml arquivo no $HOME\Documents\WindowsPowerShell\Snippets diretório. Você pode mover ou copiar os snippets para o diretório de snippets de um módulo do Windows PowerShell ou para qualquer outro diretório.

O Get-IseSnippet cmdlet, que obtém snippets criados pelo usuário no diretório de snippets locais, não obtém snippets importados.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Importar snippets de um diretório

Este exemplo importa os snippets do \\Server01\Public\Snippets diretório para a sessão atual. Ele usa o parâmetro Recurse para obter snippets de todos os subdiretórios do diretório Snippets.

Import-IseSnippet -Path \\Server01\Public\Snippets -Recurse

Exemplo 2: Importar snippets de um módulo

Este exemplo importa os snippets do módulo SnippetModule . O comando usa o parâmetro ListAvailable para importar os snippets mesmo que o módulo SnippetModule não seja importado para a sessão do usuário quando o comando for executado.

Import-IseSnippet -Module SnippetModule -ListAvailable

Exemplo 3: Localizar snippets em módulos

Este exemplo obtém snippets em todos os módulos instalados na variável de ambiente PSModulePath .

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    ForEach-Object {$_.fullname}

Exemplo 4: Importar todos os snippets de módulo

Este exemplo importa todos os snippets de todos os módulos instalados para a sessão atual. Normalmente, você não precisa executar um comando como esse porque os módulos que têm snippets usarão o Import-IseSnippet cmdlet para importá-los para você quando o módulo for importado.

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    ForEach-Object {$psise.CurrentPowerShellTab.Snippets.Load($_)}

Exemplo 5: Copiar todos os snippets de módulo

Este exemplo copia os arquivos de snippet de todos os módulos instalados para o Snippets diretório do usuário atual. Ao contrário de snippets importados, que afetam apenas a sessão atual, snippets copiados estão disponíveis em cada sessão do ISE do Windows PowerShell.

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    Copy-Item -Destination $HOME\Documents\WindowsPowerShell\Snippets

Parâmetros

-ListAvailable

Indica que esse cmdlet obtém snippets de módulos instalados no computador, mesmo que os módulos não sejam importados para a sessão atual. Se esse parâmetro for omitido e o módulo especificado pelo parâmetro Module não for importado para a sessão atual, a tentativa de obter os snippets do módulo falhará.

Esse parâmetro é válido somente quando o parâmetro Module é usado no comando.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Module

Importa os snippets do módulo especificado para a sessão atual. Não há suporte para caracteres curinga.

Esse parâmetro importa trechos de Snippet.ps1xml arquivos no subdiretório Snippets no caminho do módulo, como $HOME\Documents\WindowsPowerShell\Modules\<ModuleName>\Snippets.

Esse parâmetro foi projetado para ser usado por autores de módulo em um script de inicialização, como um script especificado na chave ScriptsToProcess de um manifesto de módulo. Os snippets em um módulo não são importados automaticamente com o módulo, mas você pode usar um Import-IseSnippet comando para importá-los.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Path

Especifica o caminho para o diretório de snippets no qual esse cmdlet importa snippets.

Tipo:String
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:True

-Recurse

Indica que esse cmdlet importa trechos de todos os subdiretórios do valor do parâmetro Path .

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

None

Você não pode canalizar objetos para esse cmdlet.

Saídas

None

Esse cmdlet não retorna nenhuma saída.

Observações

  • Você não pode usar o Get-IseSnippet cmdlet para obter snippets importados. Get-IseSnippet obtém apenas trechos no $HOME\Documents\WindowsPowerShell\Snippets diretório.

  • Import-IseSnippet usa o método estático de carga de objetos Microsoft.PowerShell.Host.ISE.ISESnippetCollection . Você também pode usar o método Load de snippets no modelo de objeto do ISE do Windows PowerShell: $psISE.CurrentPowerShellTab.Snippets.Load()

  • O New-IseSnippet cmdlet armazena novos snippets criados pelo usuário em arquivos .ps1xml não assinados. Dessa forma, o Windows PowerShell não pode carregá-los em uma sessão na qual a política de execução é AllSigned ou Restricted. Em uma sessão restrita ou AllSigned , você pode criar, obter e importar snippets criados por usuários não assinados, mas não pode usá-los na sessão.

    Para usar snippets não assinados criados pelo usuário que o Import-IseSnippet cmdlet retorna, altere a política de execução e reinicie o ISE do Windows PowerShell.

    Para obter mais informações sobre as políticas de execução do Windows PowerShell, consulte about_Execution_Policies.