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.