Добавление имени папки в любой конец пути - PullRequest
0 голосов
/ 02 апреля 2020

Я новичок в Powershell и мне нужен небольшой сценарий. На самом деле я завершил некоторую часть своего сценария расследованием здесь с некоторыми вопросами, которые задавались ранее.

folderaddress: C: \ Users \ Test \ A \ B

Существует 3 подпапки M1, M2, M3 в папке B означает, что под "C: путь \ Users \ Test \ A \ B ". Сначала я привел все папки по этому пути с помощью Get-ChildItem .

После этого я буду использовать внутренние папки папок M1 или M2 или M3. Например, сначала я приведу подпапку папки M1. Тогда я буду использовать для папки M2 и go на. Эти папки M1, M2, M3 будут динамически изменяться, поэтому путь к этим папкам будет меняться.

Я хочу добавить путь к адресу папки к имени forlder M1. В конце процесса путь должен быть:

folderaddress: C: \ Users \ Test \ A \ M1 или C: \ Users \ Test \ A \ B \ M2

$names = Get-Childitem -Path C:\Users\Test\A -Directory -Name
$testadres  = "C:\Users\Test\A" 

На самом деле я пытаюсь добавить в конец пути имя подпапки в скрипте как динамически. Конец процесса нового пути должен быть ниже:

$newaddress = "C:\Users\Test\A\M1" или $newaddress = "C:\Users\Test\A\M2".

1 Ответ

0 голосов
/ 02 апреля 2020

Если вы хотите перечислить пути подкаталогов первого уровня, вы можете сделать следующее:

Get-Childitem -Path C:\Users\Test\A -Directory | Select -Expand FullName

Если вы хотите присоединить имя подкаталога из одного пути ($sourceDir) к концу другого пути ($targetDir), вы можете сделать следующее:

$sourceDir = 'C:\Users\Test\A\B'
$targetDir = 'C:\Users\Test\A'
Get-ChildItem -Path $sourceDir -Directory -Name | Foreach-Object {
    Join-Path -Path $targetDir -ChildPath $_
}

Если в любой момент вы хотите выполнить запрос глубже, чем на один уровень, вы можете добавить переключатель -Recurse в Get-ChildItem .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...