|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Копирование папок с файлами с сохранением директорий по маскам |
|
|
CMD/BAT - [решено] Копирование папок с файлами с сохранением директорий по маскам
|
Новый участник Сообщения: 13 |
Всем привет. Нужно скопировать с сетевого диска "R" на диск "D:\1" все папки содержащие в названии ключевые слова "КМ" и "КЖ" со всеми подпапками и файлами, которые есть в этих папках независимо от их названия. При копировании необходимо сохранить директории.
Код есть и он работает, но не совсем правильно, копируются только папки содержащие файлы с масками "КМ" и "КЖ", а мне нужно копировать папку с вложенными файлами по данной маске. |
|
Отправлено: 07:31, 21-06-2018 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Нудно на диске D повторить структуру каталогов с R, но содержимое оставить только в директориях КМ/КЖ?
Или найти такие директории и покидать их в корень D ? |
Отправлено: 10:04, 21-06-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата Busla:
Одно но, повторять структуру каталогов нужно только не для всех папок, а только для копируемых т.е. для папок содержащих в названии буквы КЖ/КМ. Мой код это делает, но ищет не папки, а файлы... |
|
Отправлено: 11:16, 21-06-2018 | #3 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 11:39, 21-06-2018 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать buntr, попробуйте так:
Скрытый текст
@echo off setlocal enableextensions enabledelayedexpansion set sSourceFolder=r:\ set sDestFolder=d:\1 set sMask="*КМ*.*" "*КЖ*.*" if exist "%sSourceFolder%\." ( if exist "%sDestFolder%\." ( pushd "%sSourceFolder%" && ( for /f "usebackq delims=" %%i in (`2^>nul dir /b /a:d %sMask%`) do ( if not exist "%sDestFolder%\%%~i\." md "%sDestFolder%\%%~i" xcopy.exe "%%~i\*.*" "%sDestFolder%\%%~i\" /e /f /h /r /y ) popd ) ) else ( echo Can't find destination folder [%sDestFolder%]. exit /b 2 ) ) else ( echo Can't find source folder [%sSourceFolder%]. exit /b 1 ) endlocal exit /b 0 |
|
Отправлено: 11:47, 21-06-2018 | #5 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
|
|
Отправлено: 11:52, 21-06-2018 | #6 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 11:56, 21-06-2018 | #7 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
|
|
Отправлено: 12:02, 21-06-2018 | #8 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
|
|
Отправлено: 12:24, 21-06-2018 | #9 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Я неверно понял задачу: считал, что ваши КМ КЖ папки только в корне R:
Попробуйте так: |
------- Отправлено: 12:28, 21-06-2018 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Поиск файла по нескольким маскам и копирование в папку | miti_cmd | Скриптовые языки администрирования Windows | 9 | 16-01-2016 20:40 | |
CMD/BAT - [решено] Бекап файлов по маске с сохранением директорий | denisz | Скриптовые языки администрирования Windows | 3 | 16-09-2013 13:13 | |
CMD/BAT - Копирование только самых новых файлов в папках с сохранением структуры папок | hoh | Скриптовые языки администрирования Windows | 3 | 03-01-2012 10:22 | |
CMD/BAT - [решено] Копирование папок и файлов по маскам | dorosa | Скриптовые языки администрирования Windows | 10 | 28-01-2011 14:18 | |
CMD/BAT - [решено] как осуществить копирование по маске с сохранением структуры папок | seriych | Скриптовые языки администрирования Windows | 3 | 29-05-2010 17:10 |
|