| Variable Name | Description |
| $_ | The current pipeline object; used in script blocks, filters, the process clause of functions, where-object, foreach-object and switch |
| $^ | contains the first token of the last line input into the shell |
| $$ | contains the last token of last line input into the shell |
| $? | Contains the success/fail status of the last statement |
| $Args | Used in creating functions that require parameters |
| $Env:Path | Environmental Path to files. |
| $Error | If an error occurred, the object is saved in the $error PowerShell variable |
| $foreach | Refers to the enumerator in a foreach loop. |
| $HOME | The user’s home directory; set to %HOMEDRIVE%%HOMEPATH% |
| $Input | Input piped to a function or code block |
| $Match | A hash table consisting of items found by the -match operator. |
| $MyInvocation | Information about the currently script or command-line |
| $Host | Information about the currently executing host |
| $LastExitCode | The exit code of the last native application to run |
| $true | Boolean TRUE |
| $false | Boolean FALSE |
| $null | A null object |
| $OFS | Output Field Separator, used when converting an array to a string. By default, this is set to the space character. |
| $ShellID | The identifier for the shell. This value is used by the shell to determine the ExecutionPolicy and what profiles are run at startup. |
| $StackTrace | contains detailed stack trace information about the last error |