Altere o diretório do perfil Powershell $

6

Gostaria de saber como alterar meu local para o qual minha variável $ profile aponta.

PS H:\> $profile
H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

H: \ é um compartilhamento de rede, portanto, quando eu crio meu arquivo de perfil e carrego o powershell, recebo o seguinte:

Security Warning Run only scripts that you trust. While scripts from the Internet can be useful, this script can potentially harm your computer. Do you want to run H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1? [D] Do not run [R] Run once [S] Suspend [?] Help (default is "D"):

De acordo com a Microsoft, a localização do perfil $ é determinada pelo% USERPROFILE% variável de ambiente . Isso não é verdade:

PS H:\> $env:userprofile
C:\Users\username

Por exemplo, eu tenho uma máquina XP trabalhando como eu quero:

PS H:\> $profile
C:\Documents and Settings\username\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
PS H:\> $env:userprofile
C:\Documents and Settings\username
PS H:\> $env:homedrive
H:
PS H:\> $env:homepath
\

Aqui está a mesma saída da máquina Vista, onde o $ profile aponta para o lugar errado:

PS H:\> $profile
H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
PS H:\> $env:userprofile
C:\Users\username
PS H:\> $env:homedrive
H:
PS H:\> $env:homepath
\

Como o perfil $ não é determinado por% USERPROFILE%, como faço para alterá-lo? Claramente, qualquer coisa que envolva mudar o caminho de casa ou o caminho de casa não é a solução que estou procurando.

    
por Swoogan 27.10.2010 / 18:46

3 respostas

4

Você também pode conferir esta postagem em estouro de pilha . A melhor solução oferecida até agora (para a minha pergunta quase idêntica) é alterar $ profile.AllUsersAllHosts para "pontuar source" outro arquivo de sua escolha.

Eu não vi nada até agora para indicar que você pode alterar o valor padrão do $ profile em si.

    
por 24.02.2011 / 21:06
3

Eu estava tendo um problema semelhante usando o Windows XP e o Windows 8 de dentro de uma máquina virtual VMware Fusion:

PS C:> $profile
\vmware-host\Shared Folders\<user>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

Depois que parei o espelhamento "Desktop" (mantive as pastas compartilhadas), o problema foi resolvido:

PS C:> $profile
C:\Documents and Settings\Administrator\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    
por 22.10.2014 / 21:17
0

Estou no Windows 10 e estava tendo o mesmo problema. Consegui corrigi-lo alterando o Location em Document Properties .

Meu $profile estava sendo referenciado pelo caminho UNC (ex. \server\path\to\my\document\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 ). Quando Powershell tentou executar isso, recebi o aviso de segurança.

Para corrigir isso:

  1. Crie uma unidade mapeada para a pasta de rede.
  2. Vá para This PC , clique com o botão direito do mouse na pasta Documents e selecione Properties .

  3. Atualizarlocalizaçãoparaocaminhodaunidademapeada

  4. Clique em OK ou aplique.

por 14.11.2018 / 18:37