Je voudrais savoir comment modifier l'emplacement de ma variable de profil $.
PS H:\> $profile
H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
H: \ est un partage réseau, donc quand je crée mon fichier de profil et charge le PowerShell, j'obtiens ce qui suit:
Avertissement de sécurité Exécutez uniquement les scripts auxquels vous faites confiance. Bien que les scripts provenant d'Internet puissent être utiles, ce script peut potentiellement endommager votre ordinateur. Voulez-vous exécuter H: \ WindowsPowerShell \ Microsoft.PowerShell_profile.ps1? [D] Ne pas exécuter [R] Exécuter une fois [S] Suspendre [?] Aide (la valeur par défaut est "D"):
Selon Microsoft, l'emplacement du profil $ est déterminé par la variable d'environnement% USERPROFILE% . Ce n'est pas vrai:
PS H:\> $env:userprofile
C:\Users\username
Par exemple, j'ai une machine XP qui fonctionne comme je veux:
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
\
Voici la même sortie de la machine Vista où le profil $ pointe vers le mauvais endroit:
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
\
Puisque $ profile n'est pas réellement déterminé par% USERPROFILE%, comment puis-je le changer? De toute évidence, tout ce qui implique de modifier le trajet d'origine ou le chemin de retour n'est pas la solution que je recherche.
la source
Réponses:
Vous pouvez également consulter ce post sur Stack Overflow . La meilleure solution proposée jusqu'à présent (à ma question presque identique) est de changer $ profile.AllUsersAllHosts pour "dot source" un autre fichier de votre choix.
Je n'ai rien vu jusqu'à présent pour indiquer que vous pouvez modifier la valeur par défaut de $ profile lui-même.
la source
J'avais un problème similaire en utilisant Windows XP et Windows 8 à partir d'une machine virtuelle VMware Fusion:
Une fois que j'ai arrêté la mise en miroir «Bureau» (j'ai conservé les dossiers partagés), le problème a été résolu:
la source
Je suis sur Windows 10 et rencontrais le même problème. Je suis en mesure de le réparer en changeant la
Location
dansDocument Properties
.Mon
$profile
était référencé par le chemin UNC (ex.\\server\path\to\my\document\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
). Lorsque Powershell a essayé d'exécuter cela, j'ai reçu l'avertissement de sécurité.Pour résoudre ce problème:
Accédez au dossier,
This PC
cliquez dessus avec le bouton droitDocuments
et sélectionnezProperties
.Mettre à jour l'emplacement vers le chemin de lecteur mappé
Cliquez sur OK ou appliquez.
la source