|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] копирование BAT |
|
CMD/BAT - [решено] копирование BAT
|
Новый участник Сообщения: 34 |
Профиль | Отправить PM | Цитировать
на диске C: есть папка C:\LOGO\555
в папке 555 есть 3 файла 1.cfg 2.so 3.BIN как скопировать эти 3 файла в другую папку и под папки в ней с заменой этих файлов если существуют C:\LOGO\new\launch\968000000000 |
|
Отправлено: 01:08, 27-10-2016 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать да это папка 968000000000
в ней 100 разных папок в эти папки мне и надо скопировать эти 3 файла если они там есть то с заменой |
Последний раз редактировалось 55kadi, 27-10-2016 в 01:29. Отправлено: 01:24, 27-10-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать @Echo Off Set "InBox=C:\LOGO\555" Set "OutBox=C:\LOGO\new\launch\968000000000" Pushd %InBox% Xcopy "1.cfg" "%OutBox%\" /Y /D /R /H /C /K >nul Xcopy "2.so" "%OutBox%\" /Y /D /R /H /C /K >nul Xcopy "3.bin" "%OutBox%\" /Y /D /R /H /C /K >nul FOR /F "usebackq delims=" %%d IN (`Dir /B /A:D 2^>nul`) DO ( Xcopy "%%d" "%OutBox%\%%d\" /Y /D /E /R /H /C /K >nul ) popd GoTo :Eof |
------- Последний раз редактировалось megaloman, 28-10-2016 в 05:11. Отправлено: 10:49, 27-10-2016 | #3 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать пишет неправильно указан диск в чем проблема
|
Последний раз редактировалось 55kadi, 28-10-2016 в 22:20. Отправлено: 19:49, 27-10-2016 | #4 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать работает разобрался изменил букву названия диска С: с большой на маленькую с:
но осталась одна проблема эти 3 файла он копирует в папку 968000000000 а мне надо скопировать эти 3 файла с заменой в папки их порядка 100 штук которые находяться в папке 968000000000 @Echo Off Set "InBox=с:\LOGO\555" Set "OutBox=с:\LOGO\new\launch\968000000000" Pushd %InBox% Xcopy "1.cfg" "%OutBox%\" /Y /D /R /H /C /K >nul Xcopy "2.so" "%OutBox%\" /Y /D /R /H /C /K >nul Xcopy "3.bin" "%OutBox%\" /Y /D /R /H /C /K >nul FOR /F "usebackq delims=" %%d IN (`Dir /B /A:D 2^>nul`) DO ( Xcopy "%%d" "%OutBox%\%%d\" /Y /D /E /R /H /C /K >nul ) popd GoTo :Eof |
|
Отправлено: 01:11, 28-10-2016 | #5 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать 55kadi, я, похоже, неверно понял задачу. Мой скрипт из папки 555 берёт 3 файла и все подпапки в ней и копирует в папку 968000. А что нужно Вам? Взять из папки 555 три файла и скопировать их во все подпапки папки 968000? А если в этих папках есть тоже подпапки более глубокого уровня, то и туда копировать тоже?
О букве "c" в имени диска- неважно, большая она или маленькая, главное, чтобы она была латинская а не русская, вполне возможно, что это я виноват- у меня при отладке была другая буква диска, не C. |
------- Отправлено: 05:10, 28-10-2016 | #6 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать Взять из папки 555 три файла и скопировать их во все подпапки папки 968000
|
Отправлено: 05:36, 28-10-2016 | #7 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Взять из папки 555 три файла и скопировать их во все подпапки папки 968000
Взять из папки 555 три файла и скопировать их во все подпапки папки 968000, если они более свежие
|
------- Отправлено: 06:21, 28-10-2016 | #8 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать не работает
|
Отправлено: 17:14, 28-10-2016 | #9 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата 55kadi, не верю:
Вот отладочный вариант, в папке C:\LOGO\555 образуется LOG-файл с именем батника, не сочтите за труд довести его содержимое до меня
@Echo Off Set "InBox=C:\LOGO\555" Set "InFile="1.cfg" "2.so" "3.bin"" Set "OutBox=C:\LOGO\new\launch\968000000000" Dir "%OutBox%" /A:D >"%InBox%\%~nx0.LOG" Dir "%InBox%\?.*" /A:-D >>"%InBox%\%~nx0.LOG" FOR /F "usebackq delims=" %%d IN (`Dir "%OutBox%" /B /A:D 2^>nul`) DO ( Echo ----- "%OutBox%\%%d\" >>"%InBox%\%~nx0.LOG" FOR %%f IN (%InFile%) DO ( Echo Copy "%InBox%\%%~f" "%OutBox%\%%d\" >>"%InBox%\%~nx0.LOG" Copy "%InBox%\%%~f" "%OutBox%\%%d\" >nul ) ) Из вашего скриншота следует, что: или нет подпапок в папке C:\LOGO\new\launch\968000000000 или нет файлов "1.cfg" "2.so" "3.bin" в папке C:\LOGO\555 |
|
------- Последний раз редактировалось megaloman, 29-10-2016 в 00:27. Причина: Исправление ошибки, найденной alpap Отправлено: 18:41, 28-10-2016 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - bat файл, резервное копирование | litoo | Скриптовые языки администрирования Windows | 5 | 20-06-2016 19:03 | |
Любой язык - Копирование через BAT файл | ALEX-AS | Скриптовые языки администрирования Windows | 1 | 22-05-2014 23:21 | |
CMD/BAT - Параллельное копирование файлов в bat. | Dremor | Скриптовые языки администрирования Windows | 18 | 12-01-2014 23:06 | |
CMD/BAT - Копирование по FTP .bat | Vao | Скриптовые языки администрирования Windows | 0 | 17-10-2011 10:29 | |
CMD/BAT - [решено] .bat Копирование с условием | TwoThrones | Скриптовые языки администрирования Windows | 1 | 09-01-2011 14:51 |
|