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

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

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

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


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

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


Помогите написать BAT файл , Есть папка к примеру С:\Vers\ Вней порядка 100 000 000 000 xml файлов возвростом от сейчас и до 10 лет, надо заархивировать файлы в архивы с форматом имени ММГГГГ где мм это месяц гггг это год, формировать архивы надо по дате создания файла, а файлы нестарше 90 дней архивировать ненадо. Все файлы которые заархивировались , очистит

Отправлено: 19:41, 04-06-2016

 

Ветеран


Contributor


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

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


Если устроит по дате изменения (с 2000 по 2020 годы), то:
Код: Выделить весь код
@Echo off
cls

Set "InBox=Z:\Vers"
Set "OutBox=Z:\Vers"
Set "Mask=*.xml"

Set "Arc=C:\Program Files\WinRAR\WinRAR.exe" 

SetLocal EnableExtensions EnableDelayedExpansion
                                                 
Pushd "%InBox%"

FOR /L %%g IN (200000,100,202000) DO (
	FOR /L %%m IN (1,1,12) DO (
		Set /A Name=%%g+%%m
		Set /A Last=!Name!+1
		If %%m==12 Set /A Last=!Last!-12+100
rem		"%Arc%" a -df -IBCK -tb!Last!000000 "%OutBox%\!Name!" "%Mask%"
		"%Arc%" a -df -tb!Last!000000 "%OutBox%\!Name!" "%Mask%"
	)
)
Архивы именовал в формате ггггмм, так как их можно логично сортировать по имени по возрастанию (убыванию) дат, формат ммгггг в этом смысле не удобен, но нет проблем сделать и так. Уточните, где у Вас расположен архиватор.

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


Последний раз редактировалось megaloman, 04-06-2016 в 21:15.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:06, 04-06-2016 | #2



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

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


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


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

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


Спасибо за помощь

Отправлено: 13:56, 06-06-2016 | #3



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - Переименовать файлы (заменить часть имени) Fresh96 Скриптовые языки администрирования Windows 4 15-01-2014 18:26
CMD/BAT - [решено] Как заархивировать файлы с датой создания этих файлов? yaoleg2 Скриптовые языки администрирования Windows 1 01-09-2013 03:09
Arch - задача: заархивировать систему pva Общий по Linux 8 02-08-2012 14:38
CMD/BAT - [решено] выбрать, заархивировать, скопировать Hrust2010 Скриптовые языки администрирования Windows 21 08-02-2011 02:55
[решено] файлы не имеют уникальнного Joliet имени Kinohunter Оптические приводы 2 26-05-2008 22:24




 
Переход