Я пытаюсь использовать powershell для копирования некоторых каталогов, имена которых совпадают с фильтром.
Прежде всего я удаляю все каталоги, которые совпадают в пути назначения, после чего я пытаюсь скопировать исходные каталоги и содержимое, но у меня есть проблема, потому что копируются только файлы внутри каталогов и подкаталогов, а не имена и структуры каталогов.
$source="F:\origin"
$destination="F:\dest"
$filter="@"
# Remove dirs @
Get-ChildItem -Path $destination -Recurse |
Where-Object { $_.DirectoryName -match $filter } |
remove-item -Recurse
# Copy dirs and all contents
Get-ChildItem -Path $source -Recurse |
Where-Object { $_.DirectoryName -match $filter } |
Copy-Item -Destination $destination
Как я могу это сделать?
Спасибо
EDIT
F: \ происхождения \ @test \ index.php
F: \ происхождение \ @ test1 \ index1.php
F: \ происхождения \ @ test1 \ sub1 \ subindex1.php
F: \ происхождения \ no_consider \ index1.php
Ожидаемый результат
F: \ Dest \ @test \ index.php
F: \ Dest \ @ test1 \ index1.php
F: \ Dest \ @ test1 \ sub1 \ subindex1.php