Compartir a través de


Split-Path

Devuelve la parte especificada de una ruta de acceso.

Sintaxis

Split-Path
     [-Path] <String[]>
     [-Parent]
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Leaf
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -LeafBase
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Extension
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Qualifier
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -NoQualifier
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Resolve]
     -IsAbsolute
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     -LiteralPath <String[]>
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]

Description

El Split-Path cmdlet devuelve solo la parte especificada de una ruta de acceso, como la carpeta primaria, una subcarpeta o un nombre de archivo. También puede obtener elementos a los que hace referencia la ruta de acceso dividida e indicar si la ruta de acceso es relativa o absoluta. Si divide una ruta de acceso sin especificar ningún otro parámetro, Split-Path devuelve la parte primaria de la ruta de acceso proporcionada.

El Split-Path comando devuelve cadenas. No devuelve FileInfo ni otros objetos de elemento como lo hacen los *-Item comandos.

Ejemplos

Ejemplo 1: Obtener el calificador de una ruta de acceso

Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier

HKCU:

Este comando devuelve solo el calificador de la ruta de acceso. El calificador es la unidad.

Ejemplo 2: Mostrar parte del nombre de archivo de la ruta de acceso

Cuando se usa el parámetro Leaf , Split-Path devuelve solo el último elemento de la cadena de ruta de acceso proporcionada, independientemente de si ese elemento es un archivo o un directorio.

Split-Path -Path .\folder1\*.txt -Leaf

*.txt

Split-Path -Path .\folder1\*.txt -Leaf -Resolve

file1.txt
file2.txt

Al usar el parámetro Resolve , Split-Path resuelve la cadena de ruta de acceso proporcionada y devuelve los elementos a los que hace referencia la ruta de acceso.

Ejemplo 3: Obtención del contenedor primario

Cuando se usa el parámetro Parent , Split-Path devuelve solo la parte del contenedor primario de la cadena de ruta de acceso proporcionada. Si la cadena Path no contiene un contenedor primario, Split-Path devuelve una cadena vacía.

Split-Path -Path .\folder1\file1.txt -Parent

.\folder1

Split-Path -Path .\folder1\file1.txt -Parent -Resolve

D:\temp\test\folder1

Al usar el parámetro Resolve , Split-Path resuelve la cadena de ruta de acceso proporcionada y devuelve la ruta de acceso completa del contenedor primario.

Ejemplo 4: Determina si una ruta de acceso es absoluta

Este comando determina si la ruta de acceso es relativa o absoluta. En este caso, dado que la ruta de acceso es relativa a la carpeta actual, que se representa mediante un punto (.), devuelve $False.

Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute

False

Ejemplo 5: Cambiar la ubicación a una ruta de acceso especificada

Este comando cambia la ubicación a la carpeta que contiene el perfil de PowerShell.

PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Users\User01\Documents\PowerShell>

El comando entre paréntesis usa Split-Path para devolver solo el elemento primario de la ruta de acceso almacenada en la variable integrada $Profile . El parámetro Parent es el parámetro de ubicación de división predeterminado. Por lo tanto, puede omitirlo desde el comando . Los paréntesis dirigen PowerShell para ejecutar primero el comando. Se trata de una manera útil de moverse a una carpeta que tiene un nombre de ruta de acceso largo.

Ejemplo 6: Dividir una ruta de acceso mediante la canalización

'C:\Users\User01\My Documents\My Pictures' | Split-Path

C:\Users\User01\My Documents

Este comando usa un operador de canalización (|) para enviar una ruta de acceso a Split-Path. La ruta de acceso se incluye entre comillas para indicar que es un único token.

Parámetros

-Credential

Nota:

Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar las credenciales al ejecutar este cmdlet, use Invoke-Command.

Tipo:PSCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Extension

Indica que este cmdlet devuelve solo la extensión de la hoja. Por ejemplo, en la ruta de acceso C:\Test\Logs\Pass1.log, devuelve solo .log.

Este parámetro se introdujo en PowerShell 6.0.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-IsAbsolute

Indica que este cmdlet devuelve $True si la ruta de acceso es absoluta y $False si es relativa. En Windows, una cadena de ruta de acceso absoluta debe comenzar con un especificador de unidad de proveedor, como C: o HKCU:. Una ruta de acceso relativa comienza con un punto (.) o un punto (..).

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Leaf

Cuando se usa el parámetro Leaf , Split-Path devuelve solo el último elemento de la cadena de ruta de acceso proporcionada, independientemente de si ese elemento es un archivo o un directorio.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-LeafBase

Indica que este cmdlet devuelve solo el nombre base de la hoja. Por ejemplo, en la ruta de acceso C:\Test\Logs\Pass1.log, devuelve solo Pass1.

Este parámetro se introdujo en PowerShell 6.0.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-LiteralPath

Especifica las rutas de acceso que se van a dividir. A diferencia de Path, el valor de LiteralPath se usa exactamente como se escribe. Ningún carácter se interpreta como carácter comodín. Si la ruta de acceso contiene caracteres de escape, escríbalos entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Tipo:String[]
Alias:PSPath, LP
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-NoQualifier

Indica que este cmdlet devuelve la ruta de acceso sin el calificador. Para los proveedores de FileSystem o del Registro, el calificador es la unidad de la ruta de acceso del proveedor, como C: o HKCU:. Por ejemplo, en la ruta de acceso C:\Test\Logs\Pass1.log, devuelve solo \Test\Logs\Pass1.log.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Parent

Split-Path devuelve solo la parte del contenedor primario de la cadena de ruta de acceso proporcionada. Si la cadena Path no contiene un contenedor primario, Split-Path devuelve una cadena vacía.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Path

Especifica las rutas de acceso que se van a dividir. Se permite el uso de caracteres comodín. Si la ruta de acceso incluye espacios, escríbala entre comillas. También puede canalizar una ruta de acceso a este cmdlet.

Tipo:String[]
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-Qualifier

Indica que este cmdlet devuelve solo el calificador de la ruta de acceso especificada. Para los proveedores de FileSystem o del Registro, el calificador es la unidad de la ruta de acceso del proveedor, como C: o HKCU:.

Tipo:SwitchParameter
Posición:1
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Resolve

Indica que este cmdlet muestra los elementos a los que hace referencia la ruta de acceso dividida resultante en lugar de mostrar los elementos de ruta de acceso.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede canalizar una cadena que contenga una ruta de acceso a este cmdlet.

Salidas

String

Este cmdlet devuelve cadenas de texto. Al especificar el parámetro Resolve , devuelve una cadena que describe la ubicación de los elementos. No devuelve objetos que representan los elementos, como un objeto FileInfo o RegistryKey .

Boolean

Al especificar el parámetro IsAbsolute , este cmdlet devuelve un valor booleano .

Notas

  • Los parámetros de ubicación dividida (Calificador, Primario, Extensión, Hoja, LeafBase y NoQualifier) son exclusivos. y solo se puede utilizar uno en cada comando.

  • Los cmdlets que contienen el nombre path (cmdlets path ) funcionan con nombres de ruta de acceso y devuelven los nombres en un formato conciso que todos los proveedores de PowerShell pueden interpretar. Están diseñados para su uso en programas y scripts en los que desea mostrar todo o parte de un nombre de ruta de acceso en un formato determinado. Úselos de la manera en que usaría Dirname, Normpath, Realpath, Join u otros manipuladores de rutas de acceso.

  • Puede usar los cmdlets path junto con varios proveedores. Estos incluyen los proveedores FileSystem, Registry y Certificate.

  • Split-Path está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider. Para obtener más información, consulte about_Providers.