Привет, ребята,
В PowerShell я хотел бы сравнить две папки; [Папка1] и [Папка2], и для каждой папки, отсутствующей в [Папка1], создайте ее в [Папка2]. Как мне это сделать?
Например:
> tree .
├───Folder1
│ ├───A0
│ ├───A1
│ ├───B0
│ └───B1
└───Folder2
├───A0
├───A1
└───B1
Вот что я пробовал до сих пор:
Я назначил исходную и целевую папки и получил список папок в каждой из них следующим образом:
$Source = "C:\Temp\Folder1"
$Destination = "C:\Temp\Folder2"
$SrcObj = Get-ChildItem $Source
$DestObj = Get-ChildItem $Destination
Затем я сравнил две папки, как таковые:
Compare-Object -ReferenceObject $SrcObj -DifferenceObject $DestObj
Что привело к следующему выводу:
InputObject SideIndicator
----------- -------------
B1 <=
Учитывая вышеприведенный вывод, я подумал, что мог бы затем перенаправить вывод команды Compare-Object непосредственно в командлет New-Item, но, похоже, это не работает для меня.
Как мне достичь своей цели - создать папку «B1», которая отсутствует в каталоге назначения?