Subscribe to Windows IT Pro
June 18, 2008 12:00 AM

How to Access an Environment Variable Without Writing a Complete PowerShell Statement

Windows IT Pro
InstantDoc ID #99076
Rating: (1)

Windows PowerShell exposes traditional shell environment variables on a drive named env. So, for example, the %TEMP% variable in a Cmd.exe shell can be found at env:\temp in PowerShell. You can access the contents of this variable using the Get-Content cmdlet:

 

Get-Content env:\temp

 

This is a useful but awkward way to access a simple variable name. To more easily access the contents of variables and many other items in PowerShell drives, PowerShell provides a special compact notation that looks like this:

 

$psdrive:item

 

In this statement, psdrive is the name of a drive (e.g., env), and item is the name of an item on that drive (e.g., the name "temp"). You can also use the same syntax to set the value of an environment variable:

 

$env:newvar = "Some text"

 

The same technique works with other providers. You can see what cmdlet gc points to like this:

 

$alias:gc

 

And you can see the code in the PowerShell prompt function with the command:

 

$function:prompt

 

You can read more about PowerShell's use of traditional shell environment variables by running the following command at a PowerShell prompt:

 

help about_environment_variable

Related Content:

ARTICLE TOOLS

Comments
  • Vince
    4 years ago
    Jun 19, 2008

    very helpful.

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.