|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
Копирование файлов с проверкой их наличия в списке копированных ранее14.09.2012, 13:26. Показов 16604. Ответов 14
Добрый день!
Помогите написать батник, суть ниже: Нужно копировать файлы по сети с записью лога (имена скопированых файлов). И чтобы перед следующим копированием шла сверка с записью в логах, если ранее файл копировался - то его не копируем, если в логах отсутствует - копируем. Спасибо! Добавлено через 23 часа 3 минуты Пожалуйста помогите! Очень нужно.
0
|
|
| 14.09.2012, 13:26 | |
|
Ответы с готовыми решениями:
14
Копирование файлов с проверкой Проверка наличия на диске в указанном каталоге перечисленных в списке файлов и вывод имен отсутствующих
|
|
|
||||||
| 15.09.2012, 22:28 | ||||||
Этот код подходит только применительно к файлам в заданной папке без рекурсии. Добавлено через 28 минут Возможно, Вам стоит еще посмотреть эту тему: Создание лога копирования файлов: что, куда и сколько времени на это ушло
0
|
||||||
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
||||||||||||||||
| 17.09.2012, 13:44 [ТС] | ||||||||||||||||
|
Спасибо!
Скриптик помог. Подскажите пож что нужно дописать чтобы одним скриптом копировать инфу с разных источников в разные папки и вести отдельный к каждому копированию лог? Пример:
И чтобы не копировался файл созданный сегодня.
0
|
||||||||||||||||
|
|
||||||
| 17.09.2012, 16:55 | ||||||
|
Придеться повторять в нужном кол-ве раз. Так попробуйте:
1
|
||||||
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 17.09.2012, 18:22 [ТС] | |
|
Работает!
Спасибо. Добавлено через 11 минут Батник будет запускаться в три часа ночи (ежедневно), нужно чтобы ко всему Вами написаному не копировались файлы созданные в день выполнения батника. Почему это нужно. Файл созданный утром на протяжении дня пишет инфу. Подскажите пож, что нужно дописать?
0
|
|
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 18.09.2012, 11:03 [ТС] | |
|
Добрый день!
Скрипт с /minage:1 работает (robocopy.exe отсутствовала в системе). При выполнении скрипта заметил один нюанс: - После первого копирования в лог пишется файл который не скопировался. (Этот самый лог предназначен для записи скопированых файлов и дальнейшей сверки при послед-х копированиях); - А вот уже после второго копирования в этот самый лог записываются и сами скопированые файлы. Получается, что не скопированые файлы которые попали в этот лог завтра не будут скопированы. Подскажите пож как устранить такую коллизию?
0
|
|
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 18.09.2012, 12:02 [ТС] | |
|
После подкидывания робокопи.ехе при копировании ошибок не было.
Нужно вести лог скопированых файлов, но не копировать файлы за текущий день (такую инфу не писать в лог, либо же писать но не в тот в который записываются скопированые файлы). Итого, что есть: 1. Файлы копируются и пишутся в лог; (+) 2. При след копировании идет сверка по ранее записаным файлам в лог; (+) 3. Копирование файлов не включая тек. день (+). Такие файлы пишутся в лог ранее скопированых файлов. (-)
1
|
|
|
|
||||||
| 21.09.2012, 20:08 | ||||||
|
m0z0k, я это учел.
Просто, утилита robocopy выдает особенные коды возврата ошибок. (обычно успешное завершение всегда 0, а тут не совсем так ):1 - успешно скопирован новый файл 0 - успешно заменен файл. Т.е. там в последней строке вместо цифры 0 нужно поставить 1.
1
|
||||||
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 25.09.2012, 13:01 [ТС] | |
|
Ухты, Круть. Работает!!!
ТО что нужно. Спасибо большущее.
0
|
|
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 06.12.2012, 16:33 [ТС] | |
|
Привет!
Подскажи пож как задать копирования только одного формата файлов? В таком исполнении сперва копируется заданный формат, а потом все остальное. Мне нужно чтобы только заданный формат копировался. Поправь пож как будет правильно. set $from=C:\Program Files\Tenable\Nessus\nessus\users\report s set $dest=C:\Arc\Rep set $log=C:\Arc\ness_rep_copy.log for /f "delims=" %%i in ('dir "%$from%" /B/A:-D') do Call :CheckLog "%%i" goto :eof :CheckLog If Exist "%$log%" For /f "delims=" %%a in (%$log%) Do If "%%a"=="%~1" Exit /B C:\Arc\robocopy.exe "%$from%" "%$dest%" *.nessus "%~1" if %errorlevel%==1 (echo.Copy is successful - %~1&echo.%~1>>"%$log%") cd C:\Arc\Rep for %%I in (*.nessus) do copy nul "%%~nI.nessus_done"
0
|
|
|
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
|
|
| 06.12.2012, 17:37 | |
|
set $from=C:\Program Files\Tenable\Nessus\nessus\users\report s\*.nessus
0
|
|
|
1 / 1 / 0
Регистрация: 13.09.2012
Сообщений: 21
|
|
| 06.12.2012, 19:10 [ТС] | |
|
Не тут то было) пробовал уже так.
Выдает ошибку: ERROR : Invalid Parameter #1 : "C:\Program Files\Tenable\Nessus\nessus\users\report s\*.nessus"
0
|
|
|
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
|
||
| 06.12.2012, 21:33 | ||
|
Тогда так: for /f "delims=" %%i in ('dir "%$from%\*.nessus" /B/A:-D') do Call :CheckLog "%%i"
0
|
||
| 06.12.2012, 21:33 | |
|
Помогаю со студенческими работами здесь
15
Проверка наличия папки и последующее копирование файлов в зависимости от разрядности системы Копирование файлов не ранее указанной даты Копирование файлов по маске из заданной ранее директории переменной Копирование всех файлов, перечисленных в списке, содержащемся в текстовом файле, в заданную директорию
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
1С: Программный отбор элементов справочника Номенклатура по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор по наименованию группы. . .
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
1С: Программный отбор элементов справочника Сотрудники по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|