|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Требуется проверка перед удалением |
|
|
CMD/BAT - [решено] Требуется проверка перед удалением
|
Новый участник Сообщения: 5 |
здравствуйте, создал бат файл который архивирует бэкапы и удаляет старые файлы на серваке.
Если укажу неправильный путь куда архивировать файлы, он не заархивирует бэкапы, но удаление оригиналов всё равно отработает))) необходимо сделать проверку, если архивирование прошло успешно только тогда удалить файлы ? Если ошибка, то exit Заранее благодарю! for /f "tokens=1-4 delims=/-\. " %%a in ('date /t') do ( set mjour=%%a set mmois=%%b set mannee=%%c ) set mydate=%mannee%%mmois%%mjour% rem где брать файлы и архивировать set indir=D:\BackUP\ rem куда складывать архивы set destdir=\\comp\url\BackUP\ rem путь до архиватора set arcpath=C:\Program Files\WinRAR rem архивируем "%arcpath%\rar" a -ep1 "%destdir%\%mydate%.rar" "%indir%" rem удаляем файлы del /f /q D:\BackUP pause |
|
Отправлено: 10:27, 17-04-2019 |
Ветеран Сообщения: 20133
|
Профиль | Отправить PM | Цитировать Цитата Romannn1:
for /f "tokens=1-4 delims=/-\. " %%a in ('date /t') do ( set mjour=%%a set mmois=%%b set mannee=%%c ) set mydate=%mannee%%mmois%%mjour% rem где брать файлы и архивировать set indir=D:\BackUP\ rem куда складывать архивы MD D:\Out set destdir=d:\Out rem путь до архиватора set arcpath=C:\Program Files\WinRAR rem архивируем "%arcpath%\rar" a -ep1 "%destdir%\%mydate%.rar" "%indir%" rem удаляем файлы del /f /q D:\BackUp |
|
------- Последний раз редактировалось yurfed, 17-04-2019 в 15:39. Отправлено: 11:32, 17-04-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать yurfed, да это будет сетевая папка
|
Отправлено: 12:02, 17-04-2019 | #3 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Romannn1, у winrar(rar) ecть ключ -df который предписывает архиватору удалить заархивированное. Удалит только в случае успешной архивации. Переложите тяжелый труд на плечи машин!
|
------- Отправлено: 14:06, 17-04-2019 | #4 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать ОГРОМЕННОЕ СПАСИБО!!!!!
|
|
Отправлено: 14:21, 17-04-2019 | #5 |
Ветеран Сообщения: 20133
|
Профиль | Отправить PM | Цитировать Цитата Romannn1:
Хочу того, не знаю чего. Цель понятна, цели не понятны ![]() Цитата megaloman:
![]() Единственнре - не удаляет, но пишет. Но откуда такие сложности? |
||
------- Последний раз редактировалось yurfed, 17-04-2019 в 15:43. Отправлено: 15:31, 17-04-2019 | #6 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать yurfed,
Цитата:
![]() А вот применять del - зачем такие сложности? @Echo Off cls Set "Backup=D:\Backup" Set "BackARC=\\comp\url\BackUP" Set "ARC="C:\Program Files\WinRAR\WinRAR.exe" a -ep1 -df" FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETIME /VALUE') DO SET "@Tdate=%%d" &Call Set "@Tdate=%%@Tdate:~0,8%%" %ARC% "%BackARC%\%@Tdate%.rar" "%Backup%\" Pause ИМХО, WinRar удобнее Rar, нагляднее и, подозреваю, быстрее. Но это дело вкуса и контекста. |
|
------- Последний раз редактировалось megaloman, 17-04-2019 в 19:12. Отправлено: 18:22, 17-04-2019 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
|
|
Отправлено: 20:28, 17-04-2019 | #8 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать А если хорошо почитать хелп в WinRar, то можно сделать еще проще
@Echo Off Set "Backup=D:\Backup" Set "BackARC=\\comp\url\BackUP" Set "ARC="C:\Program Files\WinRAR\WinRAR.exe" a -ep1 -df -ibck -ag+YYYYMMDD" Start " " %ARC% "%BackARC%\.rar" "%Backup%\" Exit /B Запуск WinRar через START позволяет избавиться от командного окна во время архивации. Батник запустит архиватор и завершится. Ключ -ibck позволяет запустить WinRAR как фоновый процесс в системном лотке, будет себе работать, никому не мешать. Вот этот вариант применения WinRar вообще можно пропиcать, допустим, в назначенных заданиях без батника, всё, что нужно (по крайней мере, приведенное в скрипте Romannn1), достигается ключами. Единственно, в строке запуска WinRar указать явно все пути. Iska, GUI рисовать, события принимать и обрабатывать конечно нужно, но я подозреваю, что WinRar должен иметь возможность использовать бОльше ОП во время работы. Надо бы сравнить на практике, но пока лень |
------- Последний раз редактировалось megaloman, 17-04-2019 в 21:02. Отправлено: 20:49, 17-04-2019 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать ОП — оперативная память? Если «да», то какая тут зависимость от GUI, або CUI?
|
Отправлено: 22:11, 17-04-2019 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Проверка присутствия пакета обновления в системе перед установкой | osmaster | Скриптовые языки администрирования Windows | 0 | 24-10-2017 18:56 | |
Любой язык - [решено] Проверка наличия файлов перед запуском приложения | Armsinglom | Скриптовые языки администрирования Windows | 2 | 15-07-2017 13:50 | |
[решено] Проверка процессора перед покупкой | NIK007 | Процесcоры | 4 | 17-10-2015 22:54 | |
Медиа - Проверка размера файлов перед записью на оптический диск | Eliyahu | Программное обеспечение Windows | 8 | 18-02-2013 14:46 | |
Проверка привода на возможность записи перед запуском Nero | SyCraft | Автоматическая установка приложений | 1 | 16-11-2010 16:22 |
|