Добавить каталог в UNC-путь - PullRequest
0 голосов
/ 05 марта 2019

Мне нужно добавить каталог в путь unc, мне нужно следующее

\\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\

Чтобы выглядеть как

\\10.0.0.1\share\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\

Мне трудно понять, какдобавить строку после первого \\ пути UNC.

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

A прагматическое решение - это простая конкатенация строк , учитывая, что дублирование \ в путях является доброкачественным (несколько \ рассматриваются какодин \; попробуйте Get-ChildItem C:\\Windows, например).

$uncShare = '\10.0.0.1\share'
$path = '\\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch'

# Works fine.
"${uncShare}${path}"

# Ditto
Join-Path $uncShare $path
0 голосов
/ 05 марта 2019

Вы можете использовать regex replace для выполнения этого:

"\\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\" -replace "^\\",'\\10.0.0.1\share'

Вы также можете использовать Join-Path, как предложил Олаф:

Join-Path -path "\\10.0.0.1\share" -ChildPath "\\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\".TrimStart('\')

Оба приведенных выше решения работают, если вашдочерний путь также находится в переменной:

$Path = "\\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\"
$Path -replace "^\\",'\\10.0.0.1\share'

Или:

Join-Path -Path "\\10.0.0.1\share" -ChildPath $Path.TrimStart('\')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...