Resolve-Path
Разрешает подстановочные знаки в пути и отображает содержимое пути.
Синтаксис
Path (По умолчанию)
Resolve-Path
[-Path] <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[<CommonParameters>]
LiteralPath
Resolve-Path
-LiteralPath <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[<CommonParameters>]
Описание
Командлет Resolve-Path отображает элементы и контейнеры, соответствующие шаблону подстановочных знаков в указанном расположении. Совпадение может включать файлы, папки, разделы реестра или любой другой объект, доступный из поставщика PSDrive.
Примеры
Пример 1. Разрешение пути к домашней папке
Символ тильды (~) — это сокращенная нотация для домашней папки текущего пользователя. В этом примере показано, Resolve-Path возвращает полное значение пути.
Resolve-Path ~
Path
----
C:\Users\User01
Пример 2. Разрешение пути к папке Windows
Resolve-Path -Path "windows"
Path
----
C:\Windows
При запуске из корневого каталога диска C: эта команда возвращает путь к папке Windows на диске C:.
Пример 3. Получение всех путей в папке Windows
"C:\windows\*" | Resolve-Path
Эта команда возвращает все файлы и папки в папке C:\Windows. Команда использует оператор конвейера (|) для отправки строки пути в Resolve-Path.
Пример 4. Разрешение пути UNC
Resolve-Path -Path "\\Server01\public"
Эта команда разрешает путь универсального соглашения об именовании (UNC) и возвращает общие папки в пути.
Пример 5. Получение относительных путей
Resolve-Path -Path "C:\prog*" -Relative
.\Program Files
.\Program Files (x86)
.\programs.txt
Эта команда возвращает относительные пути для каталогов в корне диска C:.
Пример 6. Разрешение пути, содержащего квадратные скобки
В этом примере используется параметр LiteralPath для разрешения пути к вложенной папке Test[xml].
Использование LiteralPath приводит к тому, что квадратные скобки обрабатываются как обычные символы, а не регулярные выражения.
Resolve-Path -LiteralPath 'test[xml]'
Пример 7. Разрешение пути относительно другой папки
В этом примере используется параметр RelativeBasePath для разрешения пути к исполняемому файлу pwsh относительно $Env:TEMP. Если команда включает параметр коммутатора относительного, он возвращает строковый, представляющий относительный путь от $Env:TEMP к исполняемому файлу pwsh.
$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $Env:TEMP -Relative
..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe
Параметры
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или передайте объект PSCredential. Можно создать объект PSCredential с помощью командлета Get-Credential. При вводе имени пользователя этот командлет запрашивает пароль.
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell.
Свойства параметров
| Тип: | PSCredential |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-LiteralPath
Указывает путь для разрешения. Значение параметра LiteralPath используется точно так же, как типизированный. Ни один символ не интерпретируется как подстановочный знак. Если путь содержит escape-символы, заключите его в одинарные кавычки ('). Одинарные кавычки указывают PowerShell на то, что не следует интерпретировать какие-либо символы как управляющие последовательности.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | PSPath, LP |
Наборы параметров
LiteralPath
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Path
Указывает путь PowerShell для разрешения. Этот параметр является обязательным. Можно также передать строку пути в Resolve-Path. Разрешено использование подстановочных символов.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
Path
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Relative
Указывает, что этот командлет возвращает относительный путь.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Path
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
LiteralPath
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-RelativeBasePath
Указывает путь для разрешения относительного пути из. При использовании этого параметра командлет возвращает объект System.Management.Automation.PathInfo для разрешенного пути.
При использовании этого параметра с параметром Relative switch командлет возвращает строку, представляющую относительный путь от RelativeBasePath до path.
Этот параметр добавлен в PowerShell 7.4.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
String
Можно передать строку, содержащую путь к этому командлету.
Выходные данные
PathInfo
По умолчанию этот командлет возвращает объект PathInfo.
String
Если указать параметр Относительной, этот командлет возвращает строковое значение для разрешенного пути.
Примечания
PowerShell включает следующие псевдонимы для Resolve-Path:
- Все платформы:
rvpa
Командлеты *-Path работают с файловой системы, реестраи поставщиками сертификатов.
Resolve-Path предназначен для работы с любым поставщиком. Чтобы вывести список поставщиков, доступных в сеансе, введите Get-PSProvider. Дополнительные сведения см. в разделе о поставщиках.
Resolve-Path разрешает только существующие пути. Его нельзя использовать для разрешения расположения, которое еще не существует.