Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Копирование новых файлов

Ответить
Настройки темы
CMD/BAT - Копирование новых файлов

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте.
Есть каталог C:\AAA с файлами *.*
Есть каталог C:\BBB с подкаталогами 333, 444 и т.д., в которых могут быть те же файлы, что и в C:\111
Нужно скопировать из C:\AAA в С:\IN только те файлы, которых нет в C:\BBB (включая подкаталоги).

Отправлено: 12:42, 18-03-2016

 

Ветеран


Contributor


Сообщения: 2733
Благодарности: 1698

Профиль | Отправить PM | Цитировать


Цитата Это не ошибка?:
...которых могут быть те же файлы, что и в C:\111
Может быть C:\AAA? В этом случае
Код: Выделить весь код
@Echo Off

Set "AAA=Z:\A A A"
Set "BBB=Z:\B B B"
Set "In=Z:\In"

FOR /F "usebackq tokens=1,2,* delims=\" %%i IN (`Dir "%AAA%\*.*" /B /S /A:-D 2^>nul`) DO (
	If Not Exist "%BBB%\%%k" Call :Todir "%%i\%%j\%%k" "%In%\%%k"
)
GoTo :Eof

:Todir

If Not Exist "%~dp2" md "%~dp2"
Copy %1 %2 >nul
Я Ваши имена AAA и BBB заменил на A A A и B B B для отладки, Вы, естественно, подставите свои реальные пути

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 19-03-2016 в 17:06.


Отправлено: 17:01, 19-03-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Сейчас при запуске bat-файла в Z:\In копируется полностью содержимое Z:\A A A.
Может из-за структуры каталогов? Она такая:
С:\ХХХ\ААА
С:\ХХХ\ВВВ с подкаталогами
С:\ХХХ\IN
Пути все прописаны правильно.

Отправлено: 13:01, 21-03-2016 | #3


Ветеран


Contributor


Сообщения: 2733
Благодарности: 1698

Профиль | Отправить PM | Цитировать


Как была поставлена задача, так она и сделана. Решение делалось для случая, когда папки в корневом каталоге. Ниже решение для случая когда папка ААА является подпапкой папки в корневом каталоге, как у Вас указано во втором варианте постановки задачи. Кстати, критичным для этого решения является вложенность папки ААА, другие папки могут быть где угодно. Причём, если папки In не существует, то она будет создана, если, конечно, это возможно
Код: Выделить весь код
@Echo Off

Set "AAA=Z:\xxx\A A A"
Set "BBB=Z:\У попа была собака\xxx\B B B"
Set "In=Z:\Поп ее любил\In"

FOR /F "usebackq tokens=1,2,3,* delims=\" %%i IN (`Dir "%AAA%\*.*" /B /S /A:-D 2^>nul`) DO (
	If Not Exist "%BBB%\%%l" Call :Todir "%%i\%%j\%%k\%%l" "%In%\%%l"
)
GoTo :Eof

:Todir

If Not Exist "%~dp2" md "%~dp2"
Copy %1 %2 >nul

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 21-03-2016 в 22:28.


Отправлено: 22:17, 21-03-2016 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Копирование новых файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
PowerShell - [решено] Копирование новых файлов Ololosh Скриптовые языки администрирования Windows 2 09-04-2015 10:42
CMD/BAT - FTP копирование всех новых PDF файлов LAKERS824 Скриптовые языки администрирования Windows 19 30-09-2014 15:26
CMD/BAT - Ftp копирование файлов и удаление, загрузка новых dvassilyev Скриптовые языки администрирования Windows 2 08-05-2012 15:43
CMD/BAT - Копирование только самых новых файлов в папках с сохранением структуры папок hoh Скриптовые языки администрирования Windows 3 03-01-2012 10:22
CMD/BAT - Копирование новых файлов Доктор Ливси Скриптовые языки администрирования Windows 1 08-11-2010 12:37




 
Переход