shalalak
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет Встала такая вот задача: забирать из одной директории файлы на другой компьютер и удалять их в источнике. Но удалять лишь те, которые старше 3 дней. Ось от Микрософта Ну то есть имеется софтина, которая регулярно сваливает свои бэкапы в папку на своем компе N1. Мне надо их забирать на другой комп N2. Бэкапы в источнике при этом нужно затирать, так как быстрые диски на нем не резиновые. Но поскольку нужна оперативность при восстановлении, бэкапы за последние 3 дня должны также находиться на N1, чтобы не гонять бэкап по сети обратно. Через месяц бэкапы на втором компе также должны затираться. При этом доступа с N1 на N2 по соображениям секьюрности нет, есть только с N2 на N1 Казалось бы все просто На компе N2 пишем вот такой батничек set source=\\Comp1\d$\Backup\Data set dest=D:\DataBackup\Data REM Переносим с 1-го компа все файлы старше 3 дней на второй robocopy "%source%" "%dest%" /E /MOV /Z /B /R:3 /W:1 /REG /MINAGE:3 REM Копируем оставшееся туда же robocopy "%source%" "%dest%" /E /Z /B REM удаляем на N2 все старше 1 месяца ForFiles /p "%dest%" /s /c "cmd /c del @file /f /q" /d -31 Ну и запускаем эту радость через планировщик с требуемой частотой и требуемыми правами Но собака порылась в деталях. Оказывается, если в папке назначения уже есть аналогичные файлы, то робокопи их просто пропускает. И когда через 3 дня очередь доходит до файлов, ранее скопированных а не перенесенных, робокопи видит, что они уже есть в назначении и ключ /MOV перестает работать В итоге на N1 остаются старые бэкапы (которые при этом исправно копируются на N2) Попытка натравить ForFiles на N1 благополучно проваливается, ибо... ForFiles /p "%source%" /s /c "cmd /c del @file /f /q" /d -3 ОШИБКА: Пути UNC (\\компьютер\общий_ресурс) не поддерживаются. Запускать второй батник на N1 с удалением не хочется. Ну например на случай отказа N2. Все архивы долэны быть на N1 до того момента как их заберут. А батник, запущенный с N1 их убьет, так как ему совершенно неизвестно что там скопировано на N2 а что нет... Подскажите можно ли решить данную проюлему, желательно встроенными в Windows средствами, или посоветуйте что-то что может с этим справиться. Очень желательно консольное. Здешние топики по синхронизации почитал но решения в них не увидел. ЗЫ psexec64 и forfiles решили вопрос... сорри за беспокойство  | Всего записей: 42 | Зарегистр. 27-01-2003 | Отправлено: 18:26 29-08-2023 | Исправлено: shalalak, 11:00 30-08-2023 |
|