Join-Path
Объединяет путь и его дочерний путь в один путь.
Синтаксис
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Описание
Командлет Join-Path
объединяет путь и дочерний путь в один путь.
Поставщик поддерживает разделители пути.
Примеры
Пример 1. Объединение пути с дочерним путем
PS C:\> Join-Path -Path "path" -ChildPath "childpath"
path\childpath
Эта команда используется Join-Path
для объединения пути с дочерним путем.
Так как команда выполняется от FileSystem
поставщика, она предоставляет \
разделитель для присоединения путей.
Пример 2. Объединение путей, которые уже содержат разделители каталогов
PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
Существующие разделители каталогов \
обрабатываются, поэтому между ними существует только один разделитель Path
. ChildPath
Пример 3. Отображение файлов и папок путем присоединения пути к дочернему пути
Join-Path "C:\win*" "System*" -Resolve
Эта команда отображает файлы и папки, на которые ссылаются C:\Win\*
пути, и дочерний System\*
путь. В нем отображаются те же файлы и папки, что Get-ChildItem
и у него есть полный путь к каждому элементу. В этой команде Path
опущены имена и ChildPath
необязательные имена параметров.
Пример 4. Использование пути присоединения с поставщиком реестра PowerShell
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
Эта команда отображает разделы реестра в подразделе HKLM\System
реестра, который включает в себя ControlSet
.
Параметр Resolve
пытается разрешить присоединенный путь, включая подстановочные знаки из текущего пути поставщика. HKLM:\
Пример 5. Объединение корней путей с дочерним путем
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
Эта команда используется Join-Path
для объединения нескольких корней путей с дочерним путем.
Примечание.
Диски, указанные в Path
параметре , должны существовать или соединение этой записи завершится ошибкой.
Пример 6. Объединение корней диска файловой системы с дочерним путем
Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
Эта команда объединяет корни каждого диска файловой системы PowerShell в консоли с дочерним путем Subdir
.
Команда использует Get-PSDrive
командлет для получения дисков PowerShell, поддерживаемых поставщиком FileSystem. Инструкция ForEach-Object
выбирает только корневое свойство объектов PSDriveInfo и объединяет его с указанным дочерним путем.
В выходных данных показано, что диски PowerShell на компьютере включали диск, сопоставленный с каталогом C:\Program Files
.
Пример 7. Объединение неограниченного количества путей
Join-Path a b c d e f g
a\b\c\d\e\f\g
Параметр AdditionalChildPath
позволяет присоединять неограниченное количество путей.
В этом примере имена параметров не используются, поэтому "a" привязывается к Path
, "b" и "c-g" к ChildPath
AdditionalChildPath
Параметры
-AdditionalChildPath
Указывает дополнительные элементы, добавляемые к значению параметра Path . Параметр ChildPath
по-прежнему является обязательным и должен быть указан.
Этот параметр указан со свойством ValueFromRemainingArguments
, которое позволяет присоединять неограниченное количество путей.
Этот параметр был добавлен в PowerShell 6.0.
Тип: | String[] |
Position: | 2 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-ChildPath
Указывает элементы, добавляемые к значению Path
параметра. Разрешено использовать подстановочные знаки. Этот ChildPath
параметр является обязательным, хотя имя параметра ("ChildPath") является необязательным.
Тип: | String |
Position: | 1 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-Credential
Примечание.
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.
Тип: | PSCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Path
Указывает основной путь (или пути), к которому добавляется дочерний путь. Разрешено использовать подстановочные знаки.
Значение определяет, Path
какой поставщик присоединяет пути и добавляет разделители путей.
Параметр Path
является обязательным, хотя имя параметра ("Путь") является необязательным.
Тип: | String[] |
Aliases: | PSPath |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-Resolve
Указывает, что этот командлет должен попытаться разрешить присоединенный путь от текущего поставщика.
- Если используются подстановочные знаки, командлет возвращает все пути, соответствующие присоединенным пути.
- Если подстановочные знаки не используются, командлет будет ошибкой, если путь не существует.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
В этот командлет можно передать по конвейеру строку, содержащую путь.
Выходные данные
Этот командлет возвращает строку, содержащую полученный путь.
Примечания
Командлеты, содержащие существительное path (командлеты path) управляют именами путей и возвращают имена в кратком формате, который могут интерпретировать все поставщики PowerShell. Они предназначены для использования в программах и скриптах, где имя пути или его часть должны отображаться в определенном формате.
Используйте их, как вы бы использовали Dirname
, Normpath
, Realpath
Join
или другие манипуляторы пути.
Командлеты пути можно использовать с несколькими поставщиками, включая FileSystem
Registry
поставщиков и Certificate
поставщиков.
Этот командлет предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PSProvider
. Дополнительные сведения см. в about_Providers.
Связанные ссылки
PowerShell