Split-Path

Return part of a path.

Syntax
      Split-Path [-path] string[] [SplitLocationParam]
           [-literalPath string[]] [-resolve] [-UseTransaction]
              [-credential PSCredential] [CommonParameters]

Key
   -Path string[]
       The path(s) to be split.{may be piped}
       Wildcards are permitted.

   -LiteralPath string[]
       The paths to be split.
       Like Path above, only the value is used exactly as typed.
       No characters are interpreted as wildcards. If the path includes any
       escape characters then enclose the path in single quotation marks.

   SplitLocationParam
       One of: -parent, -qualifier, -noQualifier, -leaf or -isAbsolute

          -parent      Return the parent container of the item (parent folder)
          -qualifier   Return the drive/qualifier of the specified path. (C: or HKCU:)
          -noQualifier Return the path without the drive/qualifier (\path\to\resource).
          -leaf        Return the last item or container in the path.(filename)
          -IsAbsolute  Returns TRUE if the path is absolute and FALSE if it is relative.
                       (An absolute path has a length greater than zero and does not
                        use a dot ( . ) to indicate the current path.)

   -Resolve 
       Display the items that are referenced by the resulting split path instead
       of displaying the path elements.

   -Credential PSCredential
       Use a credential to validate access to the file. Credential represents
       a user-name, such as "User64" or "Domain64\User64", or a PSCredential
       object, such as the one retrieved by using the Get-Credential cmdlet.
       If you type a user name, you will be prompted for a password.
       This parameter is not supported by any PowerShell core cmdlets or providers.
	   
   -UseTransaction
       Include the command in the active transaction.

   CommonParameters:
       -Verbose, -Debug, -ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable,
       -OutBuffer -OutVariable.

Examples

Display a list of .XLS filenames in the docs folder (don't return the whole path):

PS C:\> split-path "C:\Docs\*.xls" -leaf -resolve

Change directory to the folder containing the PowerShell $Profile:

PS C:\> Set-Location(split-path $profile -parent)

The above can be simplified with the 'cd' alias for set-location and relying on -parent being the default:

PS C:\> cd(split-path $profile)

“A gentle stream can split a mountain, given enough time”

Related:

convert-path cvpa Convert a ps path to a provider path.
join-path - Combine a path and child-path
resolve-path - Resolves the wildcards in a path
test-path Return true if the path exists, otherwise return false
get-help about_namespace
Equivalent bash command: dirname - Convert a full pathname to just a path


© Copyright SS64.com 1999-2014
Some rights reserved