Resolve-Path
Resolves the wildcard characters in a path, and displays the path contents.
Resolve-Path
[-Path] <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[<CommonParameters>]
Resolve-Path
-LiteralPath <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[<CommonParameters>]
The Resolve-Path
cmdlet displays the items and containers that match the wildcard pattern at the
location specified. The match can include files, folders, registry keys, or any other object
accessible from a PSDrive provider.
The tilde character (~
) is shorthand notation for the current user's home folder. This example
shows Resolve-Path
returning the fully qualified path value.
Resolve-Path ~
Path
----
C:\Users\User01
Resolve-Path -Path "windows"
Path
----
C:\Windows
When run from the root of the C:
drive, this command returns the path of the Windows
folder in
the C:
drive.
"C:\windows\*" | Resolve-Path
This command returns all the files and folders in the C:\Windows
folder. The command uses a
pipeline operator (|
) to send a path string to Resolve-Path
.
Resolve-Path -Path "\\Server01\public"
This command resolves a Universal Naming Convention (UNC) path and returns the shares in the path.
Resolve-Path -Path "c:\prog*" -Relative
.\Program Files
.\Program Files (x86)
.\programs.txt
This command returns relative paths for the directories at the root of the C:
drive.
This example uses the LiteralPath parameter to resolve the path of the Test[xml]
subfolder.
Using LiteralPath causes the brackets to be treated as normal characters rather than a regular
expression.
Resolve-Path -LiteralPath 'test[xml]'
This example uses the RelativeBasePath parameter to resolve the path of the pwsh
executable
relative to $env:TEMP
. When the command includes the Relative switch parameter, it returns a
String representing the relative path from $env:TEMP
to the pwsh
executable.
$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $env:TEMP -Relative
..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe
Specifies a user account that has permission to perform this action. The default is the current user.
Type a user name, such as User01
or Domain01\User01
, or pass a PSCredential object. You can
create a PSCredential object using the Get-Credential
cmdlet. If you type a user name, this
cmdlet prompts you for a password.
This parameter is not supported by any providers installed with PowerShell.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Specifies the path to be resolved. The value of the LiteralPath parameter is used exactly as
typed. No characters are interpreted as wildcard characters. If the path includes escape characters,
enclose it in single quotation marks ('
). Single quotation marks tell PowerShell not to interpret
any characters as escape sequences.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Specifies the PowerShell path to resolve. This parameter is required. You can also pipe a path
string to Resolve-Path
. Wildcard characters are permitted.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
Indicates that this cmdlet returns a relative path.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies a path to resolve the relative path from. When you use this parameter, the cmdlet returns the System.Management.Automation.PathInfo object for the resolved path.
When you use this parameter with the Relative switch parameter, the cmdlet returns a string representing the relative path from RelativeBasePath to Path.
This parameter was added in PowerShell 7.4.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
You can pipe a string that contains a path to this cmdlet.
By default, this cmdlet returns a PathInfo object.
If you specify the Relative parameter, this cmdlet returns a string value for the resolved path.
PowerShell includes the following aliases for Resolve-Path
:
- All platforms:
rvpa
The *-Path
cmdlets work with the FileSystem, Registry, and Certificate providers.
Resolve-Path
is designed to work with any provider. To list the providers available in your
session, type Get-PSProvider
. For more information, see
about_providers.
Resolve-Path
only resolves existing paths. It cannot be used to resolve a location that does not
exist yet.
PowerShell feedback
PowerShell is an open source project. Select a link to provide feedback: