У меня есть скрипт Powershell со строкой, которая выглядит следующим образом:
Copy-Item \\[machine 1]\[path 1]\[directory 1]\ \\[machine 2]\[path 2]\ -recurse
Когда мой скрипт попадает в эту строку, возникает следующая ошибка:
Copy-Item : Container cannot be copied onto existing leaf item.
At C:\[script path]\[script name]:[line] char:5
+ Copy-Item \\[machine 1]\[path 1]\[directory 1]\ \\[machine 2] ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (\\[machine 1]\[path 1]\[directory 1]:String) [Copy-Item], PSArgumentException
+ FullyQualifiedErrorId : CopyContainerItemToLeafError,Microsoft.PowerShell.Commands.CopyItemCommand
Я нашел обходной путь, который заключается в создании New-Item [directory 1] в [path 2], создающем корень, в котором Copy-Item будет заполняться содержимым, но это вызывает другую проблему, когда Copy-Item жалуется, что путь уже существует несмотря на то, что копия файла действительно удалась. Copy-Item рекламируется как своего рода решение "просто работает". Я не вижу причин для того, чтобы мой обходной путь был необходим. Какая часть документации указывает на обратное? Почему это происходит? Как лучше всего решить мою проблему?