Так что я танцевал с этим в течение дня и в течение дня, и вечная фраза «Есть несколько способов кошки кошки» постоянно приходит в голову, поэтому я решили взять в сообщество.PowerShell для копирования файлов во вложенные папки получателя, за исключением определенных папок в пункте назначения
Сценарий:
папка Источник "C: \ Updates" имеет 100 файлов различных расширений. Все необходимо скопировать в только вложенные папки из «C: \ Prod \» перезапись любых дубликатов, которые могут быть найдены.
предостережений:
Название суб-папки (назначения) в "C: \ Prod" весьма динамичны и часто меняются.
Соглашение об именах используется для определения того, какие подпапки в месте назначения должны быть исключены при копировании исходных файлов (чтобы сохранить исходные версии). Для удобства объяснения можно сказать, что любые имена папок, начинающиеся с «! Stop», должны быть исключены из процесса копирования. (! * Остановить, если подстановочные считать)
Итак, здесь я хотел вход тех, больше, чем я, чтобы решать это в PS, если мне повезет. Сегодня я возился с Copy-Item и xcopy, поэтому я очень рад услышать вход других.
Спасибо!
-Крис
@CharlieEcho Обновлено. Теперь он должен работать. –
Это получилось!Я понятия не имел о переключателе -Destination и, конечно же, открыл ISE на своей Windows 10 VM и BOOM там. Большое спасибо за ваш вклад. –
Из [Get-ChildItem for FileSystem] (https://docs.microsoft.com/powershell/module/microsoft.powershell.core/providers/filesystem-provider/get-childitem-for-filesystem#notes): «Атрибуты , Directory, File, Hidden, ReadOnly и System были введены в Windows PowerShell 3.0 и эффективны только для дисков файловой системы ». – BACON