What you see for the path is right. It is the path for your user profile (for the console host) and it is normal to not see the folder and the file. You can create it and start using your profile:

new-item -type file -path $profile -force

See here for more: about_Profiles.

Answer from manojlds on Stack Overflow
🌐
Microsoft Learn
learn.microsoft.com › en-us › powershell › module › microsoft.powershell.core › about › about_profiles
about_Profiles - PowerShell | Microsoft Learn
September 29, 2025 - The PowerShell console supports the following basic profile files. These file paths are the default locations.
Discussions

powershell profile location
I am trying to use my old scripts on a new computer and I need to know what folder the powershell profile needs to be placed in. I tried using microsofttechnet, but the answer I got didn’t work. This is my profile: $a = (Get-Host).UI.RawUI $a.BackgroundColor = “black” $a.ForegroundColor ... More on forums.powershell.org
🌐 forums.powershell.org
2
0
April 29, 2016
Is it possible to change the $PROFILE path?
I want to move every local config file to .config , so far everything done except for powershell. Why? Windows uses %localappdata% for per-machine and %appdata% for user roaming. Why would you want to force another OS's standards? If I tried to do the reverse (create and use [local]appdata on linux) people would just tell me i'm being silly. You can create a symlink to point \Powershell\ anywhere you want, you can place the profile where you want and calls to the old location will just read from where you linked to. More on reddit.com
🌐 r/PowerShell
26
13
October 26, 2024
Powershell $PROFILE variable pointing to wrong location. Where is $PROFILE variable it set? - Stack Overflow
I am unsure, but it seems if PowerShell ... profile location under Documents or $HOME, it defaults to C:\PowerShell (it would be nice to have clear specification on this behaviour). ... Syncing my Documents folder with OneDrive as well. To resolve this issue, I created a WindowsPowershell folder under my OneDrive Documents folder, and copied my Microsoft.Powershell_profile.ps1 into that folder. Powershell resolved the file and functioning ... More on stackoverflow.com
🌐 stackoverflow.com
$PROFILE suddenly pointing to wrong location
Powershell supports several locations for profiles https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_profiles?view=powershell-7.1 Description Path All Users, All Hosts $PSHOME\Profile.ps1 All Users, Current Host $PSHOME\Microsoft.PowerShell_profile.ps1 Current User, All Hosts $Home\[My ]Documents\PowerShell\Profile.ps1 Current user, Current Host $Home\[My ]Documents\PowerShell\Microsoft.PowerShell_profile.ps1 If the D drive wasn't available it'll default to one of the others. Making sure D is available and restarting powershell should allow it to find the profile you want. More on reddit.com
🌐 r/PowerShell
13
2
February 22, 2021
🌐
Microsoft
devblogs.microsoft.com › dev blogs › scripting blog [archived] › powertip: find all powershell profile locations
PowerTip: Find All PowerShell Profile Locations - Scripting Blog [archived]
July 19, 2014 - Summary: Use the hidden properties of $profile to find Windows PowerShell profile locations. How can I find the path to Windows PowerShell profile locations on my computer? Use the –Force parameter from Format-List to display the hidden properties and values: $PROFILE | Format-List -Force
🌐
TechTarget
techtarget.com › searchwindowsserver › tutorial › How-to-find-and-customize-your-PowerShell-profile
How to find and customize your PowerShell profile | TechTarget
On our system, the result is C:\Program Files\PowerShell\7\profile.ps1 for the path. Because the file is in the Program Files hierarchy and we can't edit that without administrative permissions, let's instead focus on the CurrentUserCurrentHost ...
Published   September 16, 2025
Top answer
1 of 6
16

As @FrankMerrow posted, on this Stack Overflow question you will find the answer, but the correct is the one from Neck Beard, I'll copy it here.

As @woter324 points out issuing $profile | select * will show you the paths from where PowerShell gets profiles. As stated in the MS documentation:

The profiles are listed in precedence order. The first profile has the highest precedence.

<username>profile | select *

AllUsersAllHosts       : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
AllUsersCurrentHost    : C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    : C:\Users\<username>\Documentos\WindowsPowerShell\profile.ps1
CurrentUserCurrentHost : C:\Users\<username>\Documentos\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Length                 : <will vary>

Those above are mine's, I supose you get something like

CurrentUserAllHosts    : H:\WindowsPowerShell\profile.ps1
CurrentUserCurrentHost : H:\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

In order to edit those paths you have two ways

Via regedit

Edit the key with name Personal that you will find under HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders

Via PowerShell

I didn't test this one, in the linked thread a user says it has to be tweaked in order to work but I supose it should be easy to get through.

Issue

New-ItemProperty 
  'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders' 
  Personal -Value 'Your New Path Here' -Type ExpandString -Force

Either way you have to reboot Power Shell (or windoes terminal) for this to take effect. You can then check again with $profile | select *.

2 of 6
10

You might also check out this post on Stack Overflow. The best solution offered so far (to my almost identical question) is to change $profile.AllUsersAllHosts to "dot source" another file of your own choosing.

I've seen nothing so far to indicate you can change the default value of $profile itself.

Top answer
1 of 2
3

The answer from harrymc is mostly right, except Microsoft has changed things and moves things around and doesn't update their documentation.

Try this to understand your Powershell "profile" scripts:

PS C:\Users\you> $PROFILE | select-object *

The output will be something like:

AllUsersAllHosts       : C:\Program Files\PowerShell\7\profile.ps1
AllUsersCurrentHost    : C:\Program Files\PowerShell\7\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    : C:\Users\you\OneDrive\Documents\PowerShell\profile.ps1
CurrentUserCurrentHost : C:\Users\you\OneDrive\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
Length                 : 77

This tells you where the profiles are, for you.

2 of 2
2

The blog post you have found is from 2012 and refers to an older version of Windows. While most of it is still correct, the profile folders are not up to date.

The article you found is more recent from 2023, so is to be taken seriously. The "Current user, Current Host" profile location is said to be in $HOME\Documents\PowerShell, which refers to C:\Users\USER-NAME\Documents\PowerShell.

If you install OneDrive, it will by default backup the Documents folder, by relocating it into the OneDrive sync folder and leaving only a pointer to it in C:\Users\USER-NAME.

This means that, if you have accepted the default setup of OneDrive, your PowerShell profiles are by default synced to OneDrive, but your reference is to a local folder. The profiles will be backed up to OneDrive, but the reference should stay to the local disk, not to the OneDrive folder in the cloud, to avoid problems when there is no internet connection.

🌐
PowerShell Forums
forums.powershell.org › powershell help
powershell profile location - PowerShell Help - PowerShell Forums
April 29, 2016 - This is my profile: $a = (Get-Host).UI.RawUI $a.BackgroundColor = “black” $a.ForegroundColor = “white” cls $env:path += “;C:\My Documents\PowerShell BACKUP\scripts” I am using windows 10
Find elsewhere
🌐
Microsoft Learn
learn.microsoft.com › en-us › powershell › scripting › learn › shell › creating-profiles
Customizing your shell environment - PowerShell | Microsoft Learn
November 21, 2025 - PS> $PROFILE | Select-Object * AllUsersAllHosts : C:\Program Files\PowerShell\7\profile.ps1 AllUsersCurrentHost : C:\Program Files\PowerShell\7\Microsoft.PowerShell_profile.ps1 CurrentUserAllHosts : C:\Users\username\Documents\PowerShell\profile.ps1 ...
🌐
Microsoft
devblogs.microsoft.com › dev blogs › scripting blog [archived] › understanding the six powershell profiles
Understanding the Six PowerShell Profiles - Scripting Blog [archived]
May 21, 2012 - Note A Windows PowerShell profile (any one of the six) is simply a Windows PowerShell script. It has a special name, and it resides in a special place, but it is simply a script. In this regard, it is sort of like the old-fashioned autoexec.bat batch file. Because the Windows PowerShell profile is a Windows PowerShell script, you must enable the Script Execution policy prior to configuring and using a Windows PowerShell profile.
🌐
SharePoint Diary
sharepointdiary.com › sharepoint diary › powershell › powershell tutorials › how to create and manage powershell profile?
How to Create and Manage PowerShell Profile? - SharePoint Diary
October 3, 2025 - In this comprehensive guide, we will dive into the world of PowerShell profiles, exploring their purpose, different types, how to locate and create them, and how to edit and manage multiple profiles. ... A PowerShell profile is a script that runs when PowerShell starts. The profile script allows you to set up things like: ... Set shell preferences like the prompt text, color, etc. ... In short, profiles save you time and effort by setting up your desired environment each time you open PowerShell. Profiles are stored as .ps1 script files.
🌐
Adam the Automator
adamtheautomator.com › powershell-profile-a-getting-started-guide
PowerShell Profile : A Getting Started Guide
May 3, 2023 - 2. Next, run the following New-Item command to create your PowerShell profile. This command creates a script file in the Current User – Current Host profile path ($profile).
🌐
Medium
wenijinew.medium.com › i-changed-the-powershell-profile-location-b8d414a6bf18
I Changed the PowerShell Profile Location | by Bruce Wen | Medium
February 16, 2024 - By default, the PowerShell profile location is $HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 on Windows for the current user and current host.
🌐
Helge Klein
helgeklein.com › blog › changing-location-powershell-profile-script
Changing the Location of PowerShell Profile Scripts
March 14, 2026 - Create that as a new (empty) file and open it in an editor. In the above profile script, we place a single instruction to include the actual profile script from the target directory, e.g.: ... That’s it! We effectively redirected from %USERPROFILE%\Documents\PowerShell\profile.ps1 to D:\Data\PowerShell\profile_v7.ps1. ... Depending on your KeePass package (installer or portable), the default settings location may resolve to the installation directory or the user profile.
🌐
LazyAdmin
lazyadmin.nl › home › how to create a powershell profile – step-by-step
How to Create a PowerShell Profile - Step-by-Step — LazyAdmin
May 17, 2024 - What most people don’t know is that there are different profiles. You can create a profile for the PowerShell Console/Terminal and a separate one for PowerShell ISE. But it’s also possible to create one profile that is used on all locations.
🌐
SS64
ss64.com › ps › syntax-profile.html
Set the PowerShell startup $Profile user environment
Current user profile "<My Documents>\WindowsPowerShell\profile.ps1" 4. Current User, host-specific profile"<My Documents>\WindowsPowerShell\Microsoft.PowerShell_profile.ps1" These are loaded in order 1, 2, 3, 4, it is possible to redefine the same function in the different $profile files.
🌐
Xah Lee
xahlee.info › powershell › powershell_profile.html
PowerShell: Profile (init file)
June 10, 2022 - $profile | Get-Member -Type NoteProperty | Format-List # TypeName : System.String # Name : AllUsersAllHosts # MemberType : NoteProperty # Definition : string AllUsersAllHosts=C:\Program Files\PowerShell\7\profile.ps1 # TypeName : System.String # Name : AllUsersCurrentHost # MemberType : ...
🌐
Sconstantinou
sconstantinou.com › stephanos constantinou blog › powershell tutorials › powershell profiles
PowerShell Profiles - Stephanos Constantinou Blog
January 20, 2025 - $MySession = New-PSSession -ComputerName RemoteComputer Invoke-Command -Session $MySession -FilePath $profile ... As profile will not be populated in remote session, we can also load the remote profile into the session. Check the below example. ... $MySession = New-PSSession -ComputerName RemoteComputer Invoke-Command -Session $MySession -ScriptBlock {. "$env:USERPROFILE\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"}