Я занят созданием сценария PowerShell, где папка должна быть скопирована в другую папку в составе скрипта. Для этого я хотел бы использовать стандартный интерфейс копирования Windows и использовать подсказки и варианты, такие как «В этом месте уже есть файл с тем же именем». «Вы хотите объединить эту папку», «Сделать это для всех "и т. д., а не программировать все это сам.Вызвать копию Windows из PowerShell
я исследовал в целях направления:
- Используя метод IFileOperation::CopyItem как, например, HowTo: Display progress dialog using IFileOperation, но я мог бы найти какое-либо представление о том, как встроить его в PowerShell
- Используя Verbs() Copy/Paste, но хотя пример
Invoke-FileSystemVerb -Path "C:\TestDir -Verb Cut; Invoke-FileSystemVerb -Path "\\server\share" -Verb Paste”
предлагает другое, я могу вставлять файлы, которые были скопированы/вырезаны вручную, но не удалось скопировать/вырезать файлы с помощью CmdLet или просто используя метод Verb.DoIt() (я подозреваю это по соображениям безопасности). - Имитировать перетаскивание?
Но не найдено ни одного рабочего решения. Любое предложение, как это сделать от PowerShell?
Спасибо, я LonKing такого решения в течение нескольких часов, и это, кажется, действительно сделать трюк , – iRon
Вместо цикла 'ForEach' лучше скопировать все элементы сразу:' .CopyHere ($ zip.items()) 'this также покажет« _Do this for all_ »для корневых элементов. – iRon
Я скорректировал его, чтобы скопировать всю папку, а не ее содержимое, что намного опережает IMO (если вы не хотите только копировать содержимое) –