about_Profiles

TÓPICO
    about_Profiles
DESCRIÇÃO RESUMIDA
    Descreve como criar e usar um perfil do Windows PowerShell.
DESCRIÇÃO LONGA
    Você pode criar um perfil do Windows PowerShell para personalizar 
    seu ambiente e adicionar elementos específicos de sessão a todas 
    as sessões do Windows PowerShell que você inicia. 
    Um perfil do Windows PowerShell é um script que é executado 
    durante a inicialização do Windows PowerShell. Você pode usar o 
    perfil como um script de logon para personalizar o ambiente. Você 
    pode adicionar comandos, aliases, funções, variáveis, snap-ins, 
    módulos e unidades do Windows PowerShell. Também é possível 
    adicionar outros elementos específicos de sessão ao seu perfil, 
    para que eles estejam disponíveis em todas as sessões sem que 
    seja preciso importá-los ou recriá-los.
    O Windows PowerShell oferece suporte a vários perfis para 
    usuários e programas host.
    Porém, ele não cria os perfis para você. Este tópico descreve os 
    perfis e explica como criá-los e mantê-los em seu computador.
    Explica também como usar o parâmetro NoProfile do console do 
    Windows PowerShell (PowerShell.exe) para iniciar o Windows 
    PowerShell sem qualquer perfil.
    Além disso, descreve o efeito da diretiva de execução do Windows 
    PowerShell nos perfis.
 OS ARQUIVOS DE PERFIL
    O Windows PowerShell oferece suporte a vários arquivos de perfil. 
    Além disso, os programas host do Windows PowerShell possuem 
    suporte para os próprios perfis específicos ao host. 
    Por exemplo, o console do Windows PowerShell oferece suporte aos 
    arquivos de perfil básicos listados a seguir. Os perfis estão em 
    ordem de precedência. O primeiro perfil tem a precedência mais alta. 
        Descrição                          Caminho
        -----------                        ----
        Usuário atual, Host atual          $Home\[My ]Documents\WindowsPowerShell\Profile.ps1
        Usuário atual, Todos os hosts      $Home\[My ]Documents\Profile.ps1
        Todos os usuários, Host atual      $PsHome\Microsoft.PowerShell_profile.ps1
        Todos os usuários, Todos os hosts  $PsHome\Profile.ps1
    Os caminhos de perfil incluem as seguintes variáveis:
        - A variável $PsHome, que armazena o diretório de instalação 
          do Windows PowerShell.
        - A variável $Home, que armazena o diretório base do usuário 
          atual.
    Além disso, outros programas que hospedam o Windows PowerShell 
    podem suportar seus próprios perfis. Por exemplo, o ISE (Ambiente de Script Integrado) do Windows PowerShell dá suporte os 
    perfis específicos de host a seguir.
        Descrição                      Caminho
        -----------                    -----
        Usuário atual, Host atual      $Home\[My ]Documents\WindowsPowerShell\Microsoft.PowerShellISE_profile.ps1
        Todos os usuários, Host atual  $PsHome\Microsoft.PowerShellISE_profile.ps1
    Na Ajuda do Windows PowerShell, o perfil "Usuário atual, Host 
    atual" é o perfil geralmente chamado de "seu perfil do Windows 
    PowerShell". 
 A VARIÁVEL $PROFILE
    A variável automática $Profile armazena os caminhos para os 
    perfis do Windows PowerShell que estão disponíveis na sessão atual. 
    Para exibir um caminho de perfil, exiba o valor da variável 
    $Profile. Você também pode usar a variável $Profile em um comando 
    para representar um caminho.
    A variável $Profile armazena o caminho para o perfil "Usuário 
    atual", Host atual". Os outros perfis são salvos nas propriedades 
    de observação da variável $profile.
    
    Por exemplo, a variável $Profile tem os valores a seguir no 
    console do Windows PowerShell.
        Nome                               Descrição                
        -----------                        -----------
        $Profile                           Usuário atual, Host atual  
        $Profile.CurrentUserCurrentHost    Usuário atual, Host atual  
        $Profile.CurrentUserAllHosts       Usuário atual, Todos os hosts     
        $Profile.AllUsersCurrentHost       Todos os usuários, Host atual    
        $Profile.AllUsersAllHosts          Todos os usuários, Todos os hosts       
    Pelo fato de os valores da variável $Profile serem diferentes 
    para cada usuário e em cada aplicativo host, certifique-se de 
    exibir os valores das variáveis de perfil em cada aplicativo host 
    do Windows PowerShell que você usar.
    Para ver os valores atuais da variável $Profile, digite:
        $profile | get-member -type noteproperty
    
    Você pode usar a variável $Profile em muitos comandos. Por 
    exemplo, o seguinte comando abre o perfil "Usuário atual", Host 
    atual" no Bloco de Notas:
 notepad $profile 
    O seguinte comando determina se um perfil "Todos os usuários, 
    Todos os hosts" foi criado no computador local:
 test-path $profile.AllUsersAllHosts
 COMO CRIAR UM PERFIL
    Para criar um perfil do Windows PowerShell, use o seguinte 
    formato de comando:
        if (!(test-path <nome_do_perfil>)) 
           {new-item -type file -path <nome_do_perfil> -force}
    Por exemplo, para criar um perfil para o usuário atual no 
    aplicativo host atual do Windows PowerShell, use o seguinte comando: 
        if (!(test-path $profile)) 
           {new-item -type file -path $profile -force}
    Nesse comando, a instrução If impede a substituição de um espaço 
    reservado existente pelo caminho. Substitua o valor do espaço 
    reservado <profile-path> pelo caminho para o arquivo de perfil 
    que você deseja criar.
    Observação: para criar perfis "All Users" no Windows Vista e nas 
                versões posteriores do Windows, inicie o Windows  
                PowerShell com a opção "Executar como administrador".
 COMO EDITAR UM PERFIL
    Você pode abrir qualquer perfil do Windows PowerShell em um 
    editor de texto, como o Bloco de Notas. 
    Para abrir o perfil do usuário atual no aplicativo host atual do 
    Windows PowerShell no Bloco de Notas, digite:
        notepad $profile
    Para abrir outros perfis, especifique o nome do perfil. Por 
    exemplo, para abrir o perfil de todos os usuários de todos os 
    aplicativos host, digite:
        notepad $profile.AllUsersAllHosts
    Para aplicar as alterações, salve o arquivo de perfil e reinicie 
    o Windows PowerShell.    COMO ESCOLHER UM PERFIL
    Se você usar vários aplicativos host, coloque os itens que usa em 
    todos os aplicativos host no seu perfil $Profile.CurrentUserAllHosts.
    Coloque os itens que são específicos a um aplicativo host, como 
    um comando que define a cor do plano de fundo do aplicativo, em 
    um perfil que seja específico àquele aplicativo host.
    Se você for um administrador que está personalizando o Windows 
    PowerShell para muitos usuários, siga estas diretrizes:
        -- Armazene os itens comuns no perfil $profile.AllUsersAllHosts.
        -- Armazene itens que sejam específicos a um aplicativo host 
           nos perfis $profile.AllUsersCurrentHost específicos ao 
           aplicativo host.
        -- Armazene itens para determinados usuários nos perfis 
           específicos ao usuário.
    Verifique a documentação do aplicativo host para qualquer 
    implementação especial dos perfis do Windows PowerShell.
 COMO USAR UM PERFIL
    Muitos dos itens que você cria no Windows PowerShell e a maioria 
    dos comandos que você executa só afetam a sessão atual. Quando 
    você terminar a sessão, os itens serão excluídos.
    Os comandos e itens específicos de sessão incluem variáveis, 
    variáveis de preferência, aliases, funções, comandos (exceto 
    Set-ExecutionPolicy) e snap-ins do Windows PowerShell que você 
    adiciona à sessão.
    Para salvar esses itens e torná-los disponíveis em todas as 
    sessões futuras, adicione-os a um perfil do Windows PowerShell. 
    Outro uso comum dos perfis é para salvar funções, aliases e 
    variáveis usados com frequência. Quando você salva os itens em um 
    perfil, pode usá-los em qualquer sessão aplicável sem que seja 
    necessário recriá-los. 
 COMO INICIAR UM PERFIL
    Quando você abrir o arquivo de perfil, ele estará em branco. 
    Porém, você pode preenchê-lo com as variáveis, os aliases e os 
    comandos usados com frequência.
    Aqui estão algumas sugestões iniciais.
    -- Adicione comandos que facilitem a abertura do seu perfil. Essa 
       recomendação é particularmente útil quando você usa um perfil 
       diferente de "Usuário atual, Host atual". Por exemplo, 
       adicione o seguinte comando:
               
           function pro {notepad $profile.CurrentUserAllHosts}
    -- Adicione uma função que abra a Ajuda do Windows PowerShell em 
       um arquivo de Ajuda HTML compilado (.chm). 
           função Get-CHM
            {
               (invoke-item $env:windir\help\mui\0409\WindowsPowerShellHelp.chm) 
            }
       
       Essa função abre a versão em inglês do arquivo .chm. No 
       entanto, você pode substituir o código de idioma (0409) para 
       abrir outras versões do arquivo .chm.
    
    -- Adicione uma função que liste os aliases para qualquer cmdlet.
           função Get-CmdletAlias ($cmdletname) 
            {
              get-alias | Where {$_.definition -like "*$cmdletname*"} 
              | ft Definition, Name -auto 
            }
    -- Adicione um comando Add-PsSnapin para adicionar qualquer 
       snap-in do Windows PowerShell que você usa.
    -- Personalize seu console.
           função Color-Console 
           {
         $host.ui.rawui.backgroundcolor = "white" $host.ui.rawui.foreg
         roundcolor = "black" $hosttime = (dir $pshome\powershell.exe)
         .creationtime $Host.UI.RawUI.WindowTitle = "Windows 
         PowerShell $hostversion ($hosttime)" clear-host
           }
           Color-console
    -- Adicione um prompt do Windows PowerShell personalizado que 
       inclua o nome do computador e o caminho atual. 
           function prompt 
           {
              $env:computername + "\" + (get-location) + "> " 
           }
       Para obter mais informações sobre o prompt do Windows 
       PowerShell, consulte about_Prompts.
 O PARÂMETRO NOPROFILE
    Para iniciar o Windows PowerShell sem perfis, use o parâmetro 
    NoProfile do PowerShell.exe, o programa que inicia o Windows 
    PowerShell.
    Para começar, abra um programa que pode iniciar o Windows 
    PowerShell, como o Cmd.exe ou o próprio Windows PowerShell.  
    Você também pode usar a caixa de diálogo Executar do Windows. 
    Digite:
 powershell -noprofile
    Para obter uma lista completa dos parâmetros do PowerShell.exe, 
    digite:
 powershell -?
 PERFIS E DIRETIVA DE EXECUÇÃO
    A diretiva de execução do Windows PowerShell determina, em parte, 
    se você pode executar scripts e carregar arquivos de 
    configuração, incluindo os perfis. A diretiva de execução 
    Restricted é o padrão. Ela impede a execução de todos os scripts, 
    inclusive os perfis. Se você usar a diretiva Restricted, o perfil 
    não será executado e seus conteúdos não serão aplicados.
    Um comando Set-ExecutionPolicy define e altera sua diretiva de 
    execução. É um dos poucos comandos que se aplica a todas as 
    sessões do Windows PowerShell porque o valor é salvo no Registro. 
    Você não precisa defini-lo quando abre o console e nem precisa 
    armazenar um comando Set-ExecutionPolicy em seu perfil.
 PERFIS E SESSÕES REMOTAS   
    Os perfis do Windows PowerShell não são executados automaticamente
     em sessões remotas, assim os comandos que os perfis adicionam 
     não estão presentes na sessão remota.
    Além disso, a variável automática $profile não é populada em 
    sessões remotas.  
    Para executar um perfil em uma sessão, use o cmdlet Invoke-Command.
    Por exemplo, o comando a seguir executa o perfil CurrentUserCurren
    tHost do computador local na sessão em $s. 
        invoke-command -session $s -filepath $profile
    O comando a seguir executa o perfil CurrentUserCurrentHost do 
    computador remoto na sessão em $s. Devido ao fato de a variável 
    $profile não ser populada, o comando usa o caminho explícito para 
    o perfil.
        invoke-command -session $s {invoke-expression 
        "$home\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"}
    Depois de executar esse comando, os comandos que o perfil 
    adiciona à sessão estão disponíveis em $s.
CONSULTE TAMBÉM
    about_Automatic_Variables
    about_Functions
    about_Prompts
    about_Execution_Policies
    about_Signing
    about_Remote
    Set-ExecutionPolicy