5

У меня есть файл с именем SRED.txt и папка, которая содержит сотни подпапок. В каждой папке есть еще одна папка с именем SRED, в которую следует сохранить этот файл SRED.txt. Что я хочу сделать, так это перебрать каждую папку и скопировать файл SRED.txt в соответствующую папку SRED.

Как я могу сделать это с помощью Powershell?

2 ответа2

9

Получите SRED рекурсивно, затем скопируйте файл для каждого каталога.

dir  c:\Projects SRED -Recurse|
    where {$_.PSIsContainer}|
    foreach { copy C:\Path\To\SRED.txt $_.FullName }

С новым параметром -Directory в PowerShell v3:

dir  c:\Projects SRED -Recurse -Directory|
    foreach { copy C:\Path\To\SRED.txt $_.FullName }
2

Я не думаю, что вам нужно что-то вроде PS для этого. Откройте окно командной строки и перейдите (используя cd) к папке верхнего уровня (которая содержит все папки вашего проекта). Убедитесь, что файл SRED.txt присутствует в этой папке верхнего уровня. Теперь запустите следующую команду:

for /f "delims=" %d in ('dir SRED /ad /b /s') do @xcopy SRED.txt "%d"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .