Como adiciono um cmdlet ou função do PowerShell à minha máquina para que esteja sempre disponível?

StackOverflow https://stackoverflow.com/questions/1344519

  •  20-09-2019
  •  | 
  •  

Pergunta

Se eu encontrar (ou criar) um novo cmdlet (ou função) do PowerShell, como posso adicioná-lo à minha máquina?

  • Devo copiá-lo para uma pasta específica?
  • Coloco seu conteúdo em um arquivo específico?
  • Preciso autorizá-lo, ou assiná-lo, ou dar permissão de alguma forma?

Não quero usá-lo em apenas uma sessão;Quero que esteja disponível sempre que eu usar o PowerShell nesta máquina.

Foi útil?

Solução

Como Alex menciona, qualquer função definida no seu perfil ou em um script que fique “pontilhado” no seu perfil estará sempre disponível.O mesmo acontece se você usar Add-PSSnapin em seu perfil para adicionar um snap-in.Os cmdlets no snapin estarão sempre disponíveis.Para obter mais informações sobre perfis, consulte o tópico de ajuda:

man about_profiles

No entanto, se você tiver um número significativo de funções, talvez não queira carregá-las até que sejam necessárias.Nesse caso, você pode organizar a funcionalidade em scripts e, em seguida, colocar esses scripts em um ou mais diretórios que estejam no seu caminho.Você pode então referenciar o script pelo nome sem especificar o caminho completo ou mesmo a extensão .PS1.Para obter mais informações sobre o uso de scripts, consulte o tópico de ajuda:

man about_scripts

O PowerShell V2 apresenta uma abordagem ainda melhor para organizar funções e carregá-las sob demanda.O recurso é chamado de Módulos e permite importar o módulo por um nome simples (em vez de caminho) e escolher quais funções e variáveis ​​serão tornadas públicas e quais permanecerão privadas.Se você possui V2, confira os módulos:

man about_modules

Outras dicas

Você deve acessar os cmdlets através do seu script de perfil. Dessa forma, toda vez que você acessa o PowerShell, ele é carregado. Ver O poder dos perfis.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top