This topic contains 3 replies, has 3 voices, and was last updated by
June 16, 2015 at 8:30 am #26513ParticipantTopics: 2Replies: 2Points: 0Rank: Member
I recently ran into this issue where I create an environment variable with PowerShell using the following commands and then when I check I still don't see the variable under System Properties > Environment Variables > User or System variables.
PS C:\WINDOWS\system32> cd env:
New-Item -Name ENV1 -Value "C:\Program Files\env"
PS Env:\> dir
ENV1 C:\Program Files\env
No such a variable shows under System or User Variables in GUI.
does anyone have the same experience or a solution? I tried this on Windows 7 and 8. with PowerShell 3.0 and 4.0
June 16, 2015 at 8:35 am #26514MemberTopics: 9Replies: 2322Points: 0Rank: Member
When you modify PowerShell's "Env:" drive, you're creating process environment variables. (This is the same as the SET command in the old DOS prompt).
If you want to persist environment variables, they go into the registry, and the .NET framework has methods for writing to those: https://msdn.microsoft.com/en-us/library/96xafkes(v=vs.110).aspx
[Environment]::SetEnvironmentVariable('MyVariableName', 'Some Value', 'Machine')
The third parameter can be either 'Machine', 'User', or 'Process'; Process is the same thing that you would achieve by modifying the Env: drive.
June 17, 2015 at 2:30 am #26554ParticipantTopics: 16Replies: 42Points: 0Rank: Member
Alternatively, you can use the setx command to set a environment variable either system wide/user. But if you use it on a cmd/ps window, the current session will not reflect the env variable, but you can manually set it it using set command.
setx /m ENV1 "C:\Program Files"
June 18, 2015 at 6:38 pm #26641ParticipantTopics: 2Replies: 2Points: 0Rank: Member
and without specifying any parameter or the /m switch I can get my environment variable to register/show under User Variables.
PowerShell Rocks! Thanks very much.
The topic ‘Environment variables created withPowerShell not showing under SystemProperties’ is closed to new replies.