Поиск по сайту:

Split-Path (Microsoft.PowerShell.Management)


Split-Path

Модуль:
Microsoft.PowerShell.Management

Возвращает указанную часть пути.

Синтаксис

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>]

Описание

Командлет Split-Path возвращает только указанную часть пути, например родительскую папку, подпапку или имя файла. Он также может получать элементы, на которые ссылается разделенный путь, и определять, является ли путь относительным или абсолютным.

Этот командлет можно использовать для получения или отправки только выбранной части пути.

Примеры

Пример 1. Получение квалификатора пути

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

HKCU:

Эта команда возвращает только квалификатор пути. Отличительной чертой является драйв.

Пример 2: Отображение имен файлов

Split-Path -Path "C:\Test\Logs\*.log" -Leaf -Resolve

Pass1.log
Pass2.log
...

Эта команда отображает файлы, на которые ссылается разделенный путь. Поскольку этот путь разделен до последнего элемента, также известного как лист, команда отображает только имена файлов.

Параметр Resolve указывает Split-Path отображать элементы, на которые ссылается разделенный путь, вместо отображения разделенного пути.

Как и все команды Split-Path, эта команда возвращает строки. Он не возвращает объекты FileInfo, представляющие файлы.

Пример 3. Получение родительского контейнера

Split-Path -Parent "C:\WINDOWS\system32\WindowsPowerShell\V1.0\about_*.txt"

C:\WINDOWS\system32\WindowsPowerShell\V1.0

Эта команда возвращает только родительские контейнеры пути. Поскольку он не включает никаких параметров для указания разделения, Split-Path использует местоположение разделения по умолчанию, то есть Parent.

Пример 4. Определяет, является ли путь абсолютным

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

False

Эта команда определяет, является ли путь относительным или абсолютным. В этом случае, поскольку путь указан относительно текущей папки, которая представлена точкой (.), он возвращает $False.

Пример 5. Изменение местоположения на указанный путь

PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Documents and Settings\User01\My Documents\WindowsPowerShell>

Эта команда меняет ваше местоположение на папку, содержащую профиль PowerShell.

Команда в круглых скобках использует Split-Path для возврата только родительского пути, хранящегося во встроенной переменной $Profile. Параметр Parent - это параметр местоположения разделения по умолчанию. Поэтому вы можете опустить его из команды. Круглые скобки указывают PowerShell выполнить команду первым. Это полезный способ перейти к папке с длинным путем.

Пример 6. Разделение пути с помощью конвейера

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

C:\Documents and Settings\User01\My Documents

Эта команда использует оператор конвейера (|) для отправки пути к Split-Path. Путь заключен в кавычки, чтобы указать, что это один токен.

Параметры

-Credential

Примечание

Этот параметр не поддерживается никакими поставщиками, установленными с помощью PowerShell. Чтобы выдать себя за другого пользователя или повысить свои учетные данные при запуске этого командлета, используйте Invoke-Command.

Тип :

PSCredential

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

False

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-Extension

Указывает, что этот командлет возвращает только расширение листа. Например, по пути C:\Test\Logs\Pass1.log он возвращает только .log.

Этот параметр был введен в PowerShell 6.0.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-IsAbsolute

Указывает, что этот командлет возвращает $True, если путь абсолютный, и $False, если он относительный. Абсолютный путь имеет длину больше нуля и не использует точку (.) для обозначения текущего пути.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

-Leaf

Указывает, что этот командлет возвращает только последний элемент или контейнер на пути. Например, по пути C:\Test\Logs\Pass1.log возвращается только Pass1.log.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-LeafBase

Указывает, что этот командлет возвращает только базовое имя листа. Например, по пути C:\Test\Logs\Pass1.log он возвращает только Pass1.

Этот параметр был введен в PowerShell 6.0.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-LiteralPath

Указывает пути для разделения. В отличие от Path, значение LiteralPath используется точно так, как оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки сообщают PowerShell не интерпретировать никакие символы как escape-последовательности.

Тип :

String[]

Псевдонимы:

PSPath, LP

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-NoQualifier

Указывает, что этот командлет возвращает путь без квалификатора. Для поставщиков файловой системы или реестра квалификатором является диск пути поставщика, например C: или HKCU:. Например, по пути C:\Test\Logs\Pass1.log возвращается только \Test\Logs\Pass1.log.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-Parent

Указывает, что этот командлет возвращает только родительские контейнеры элемента или контейнера, указанного в пути. Например, по пути C:\Test\Logs\Pass1.log он возвращает C:\Test\Logs. Параметр Parent является параметром разделения местоположения по умолчанию.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

False

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-Path

Указывает пути для разделения. Допускаются подстановочные знаки. Если путь содержит пробелы, заключите его в кавычки. Вы также можете указать путь к этому командлету.

Тип :

String[]

Позиция:

0

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

True

-Qualifier

Указывает, что этот командлет возвращает только квалификатор указанного пути. Для поставщиков файловой системы или реестра квалификатором является диск пути поставщика, например C: или HKCU:.

Тип :

SwitchParameter

Позиция:

1

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-Resolve

Указывает, что этот командлет отображает элементы, на которые ссылается полученный разделенный путь, вместо отображения элементов пути.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

Входы

Строка

Вы можете передать строку, содержащую путь к этому командлету.

Выходы

Строка

Этот командлет возвращает текстовые строки. Когда вы указываете параметр Resolve, он возвращает строку, описывающую расположение элементов. Он не возвращает объекты, представляющие элементы, такие как объект FileInfo или RegistryKey.

Логическое значение

Если вы укажете параметр IsAbsolute, этот командлет вернет Boolean значение.

Примечания

  • Параметры местоположения разделения (Квалификатор, Родитель, Расширение, Leaf, LeafBase, и NoQualifier) являются эксклюзивными. В каждой команде можно использовать только один.

  • Командлеты, содержащие существительное Path (командлеты Path), работают с именами путей и возвращают имена в кратком формате, который могут интерпретировать все поставщики PowerShell. Они предназначены для использования в программах и сценариях, в которых вы хотите отображать весь или часть пути в определенном формате. Используйте их так же, как вы бы использовали Dirname, Normpath, Realpath, Join или другие манипуляторы пути.

  • Вы можете использовать командлеты Path вместе с несколькими поставщиками. К ним относятся поставщики файловой системы, реестра и сертификатов.

  • Split-Path предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы просмотреть список поставщиков, доступных в вашем сеансе, введите Get-PSProvider. Дополнительные сведения см. в разделе about_Providers.