Поделиться через


Split-Path

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

Синтаксис

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

Описание

Командлет Split-Path возвращает только указанную часть пути, например родительскую папку, вложенную папку или имя файла. Он также может получать элементы, на которые ссылается 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 использует расположение разделения по умолчанию, которое является Родительским.

Пример 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 переменной. Родительский параметр — это параметр расположения по умолчанию. Поэтому его можно опустить из команды. Круглые скобки направляют 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
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-IsAbsolute

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

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Leaf

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

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-LiteralPath

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

Тип:String[]
Aliases:PSPath
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-NoQualifier

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

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Parent

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

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Path

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

Тип:String[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:True

-Qualifier

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

Тип:SwitchParameter
Position:1
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Resolve

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

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UseTransaction

Включает команду в активную транзакцию. Этот параметр доступен только при выполнении транзакции. Дополнительные сведения см. в about_Transactions.

Тип:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

String

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

Выходные данные

String

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

Boolean

При указании параметра IsAbsolute этот командлет возвращает логическое значение.

Примечания

  • Параметры расположения разделения (квалификатор, родитель, лист и NoQualifier) являются эксклюзивными. Можно использовать только один из них в каждой команде.

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

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

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