Change the Powershell $profile directory
- by Swoogan
I would like to know how to change my the location my $profile variable points to.
PS H:\> $profile
H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
H:\ is a network share, so when I create my profile file, and load powershell I get the following:
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"):
According to Microsoft, the location of the $profile is determined by the %USERPROFILE% environment variable. This is not true:
PS H:\> $env:userprofile
C:\Users\username
For example, I have an XP machine working how I want:
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
\
Here's the same output from the Vista machine where the $profile points to the wrong place:
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
\
Since $profile isn't actually determined by %USERPROFILE% how do I change it? Clearly anything that involves changing the homedrive or homepath is not the solution I'm looking for.