Share via


Windows PowerShell: Meu perfil do Windows PowerShell

Os scripts de perfil são uma maneira poderosa para personalizar o Windows PowerShell e tê-lo pronto para trabalhar da maneira que você quer que ele funcione.

Don Jones

Sempre que eu me propus a explicar scripts de perfil do Windows PowerShell, a discussão conduz inevitavelmente a alguém perguntando o que está no meu script de perfil. Geralmente, eu acho que eles estão apenas tentando ter uma idéia de como eles devem usar o seu perfil.

Perfis são legais, mas parecem tipo de mágicos em primeiro lugar porque eles acontecem sob o capô como Windows PowerShell inicia. Na realidade, eles são muito menos mágicos do que você imagina.

Primeiro, você precisa entender que o Windows PowerShell é apenas uma grande DLL sentado no seu computador. Isso é o que eu chamo o mecanismo do Windows PowerShell. Ele não faz nada com perfis. Para a maior parte, você não pode mesmo interagir diretamente com o motor a menos que você é um desenvolvedor .NET.

Meros seres humanos lidam com o Windows PowerShell através de um aplicativo de hospedagem, chamado frequentemente apenas o host. PowerShell. exe, o console de tela azul padrão que a maioria de nós usa, é um tal host. O Windows PowerShell integrada Scripting ambiente (ISE) é outra. Editores de terceiros Windows PowerShell como PrimalScript, PowerShell Plus, PowerSE, PowerGUI e assim por diante também são hospedeiros. O host é responsável pelo carregamento — ou não carregando, conforme o caso pode ser — scripts de perfil. O host realmente determina quais scripts de cargas.

No caso o host PowerShell. exe e o Windows PowerShell ISE, eles vai carregar até quatro scripts. Dois deles estão no seu perfil de usuário em uma pasta chamada \Documents\WindowsPowerShell. Estes são os perfis de usuário. Desses, um deles é suposto para ser carregado por todos os hosts do Windows PowerShell: ps1.

O outro é específico para o aplicativo de hospedagem, como PowerShell_profile. Este é carregado pelo host PowerShell. exe. Os outros dois scripts são scripts de toda a máquina, com um sendo específica do host e o outro sendo todos os hosts.

Você pode executar about_profiles ajuda no shell para ler sobre esses arquivos. Para hosts de terceiros tais como editores de script, você precisará consultar sua documentação. Para oferecer comportamento consistente com o shell do Microsoft, alguns deles irão carregar os scripts de perfil mesmo como PowerShell. exe. Outros terão seu próprio script por host que eles procuram, enquanto outros permitem que você especifique scripts que quiser carregado na inicialização.

O longo e curto do que é que seu anfitrião vai olhar para esses scripts na inicialização. Se eles existem, ele irá executá-los. Nenhum dos scripts utilizados pelos hosts Microsoft existe por padrão. Na verdade, a pasta Documents\WindowsPowerShell não é criada por padrão, tampouco. Você tem que criá-los, se você quiser usá-los. Você também deve habilitar a execução de scripts, definindo a diretiva de execução para algo que não seja restrito (que é a configuração padrão).

Meu perfil

Assim que é no meu perfil? Geralmente nada, eu sou um pouco vergonha de dizer. Isso é porque tendem a fazer um monte de coisas específicas com o Windows PowerShell — filme vídeos de treinamento, ministrar aulas, escrever artigos e assim por diante. Estas exigem um padrão completamente, a experiência de casca fresca-fora-de--caixa. Não quero que nada pré-carregadas, porque na maioria dos casos eu quero que as pessoas me passando o ato de carregar tudo o que eu preciso ver.

Se eu estivesse em um ambiente de produção normal, porém, o que iria colocar em lá? Gostaria de começar com todos os módulos que eu uso todos os dias. Por exemplo, pode adicionar o módulo de importação ActiveDirectory. Seria de esperar para estar brincando com o Active Directory muito e ter o módulo pré-carregado ajudaria.

Eu não iria colocar quaisquer funções personalizadas em meu perfil. Em vez disso, eu iria colocar aqueles em seu próprio módulo de script e importe que em meu perfil. Que mantém o perfil mais limpo e torna-se mais fácil de remover esse módulo (e as funções que ele contém) se eu achar que eles são conflitantes com outra coisa que eu preciso fazer.

Eu não iria mexer com a barra de título de janela do Windows PowerShell, o prompt do Windows PowerShell ou qualquer coisa assim. Não há nada de errado com isso, mas eu sou o tipo de pessoa que gosta dessas coisas para olhar como os padrões. Eu iria deixá-los sozinho. Eu conheço um monte de gente que gostaria de ajustar seu prompt, embora, e o perfil é o lugar para fazê-lo.

Gostaria de fazer uma mudança:

$host.privatedata.ErrorForegroundColor = 'green'

Isso transforma as mensagens de erro de vermelho para verde. Eu digo às pessoas que é porque a cor de vermelho no preto padrão é demasiado baixo contraste para facilitar a leitura. A verdadeira razão é que uma tela cheia de texto vermelho me leva de volta à aula de inglês do ensino médio e sublinha-me. Mensagens de erro verde me fazem sentir como eu estou fazendo a coisa certa, então não insisto muito. Eu sei, é estranho — culpar meus professores Ms. Giovanni e Ms. Hansen.

Eu não definir quaisquer aliases personalizados, porque eu tenho medo que eu vou usá-los. Em seguida, pode passá-los junto para alguém que não tem definição para eles, então qualquer exemplos passei ao longo não iria funcionar.

Eu não vomitar uma cor extravagante tela usando Write-Host, e não exibir uma lista de funções disponíveis ou módulos. Eu sei como listar as coisas facilmente suficiente se preciso, e eu não gosto de uma tela desordenada quando estou começando primeiro escudo (executo cls o tempo todo como é, então pode se sentir como eu estou começando um novo começo). Executar o cd c:\ para que eu estou começando na raiz do c: unidade, em vez de em minha pasta de perfil de usuário.

Assim que é o que está no meu perfil. O que é seu?

Don Jones

Don Jones é um Microsoft MVP Award destinatário e autor de "Aprender Windows PowerShell em um mês de almoços" (Manning Publications, 2011), um livro concebido para ajudar qualquer administrador tornar-se eficaz com o Windows PowerShell. Jones também oferece formação de pública e no local do Windows PowerShell. Entre em contato com ele através do ConcentratedTech.com ou bit.ly/AskDon.

Conteúdo relacionado