Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Contributor


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

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


Вот вариант (пути пропишИте свои):
В указанной папке BoxIn просматриваются файлы вида SSS_NNNNNN.* (S-любой символ, N - цифра)
архивируются в другую папку BoxArc
При наличии файлов в ранее созданном архиве переархивироваться будут только более свежие файлы.
При отсутствии файлов в соответствующем архиве они будут добавлены в архив.
Код: Выделить весь код
@Echo Off
cls
	Set "BoxIn=Z:\Box_In"
	Set "BoxArc=Z:\Box_Arc"

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

	For /F "usebackq delims=" %%f In (`2^>nul Dir "%BoxIn%\???_??????.*" /B /A:-D ^|FindStr /I /R /C:"^..._[0-9][0-9][0-9][0-9][0-9][0-9]"`) Do (
		Set "Name=%%~nf"
		Call Set "Name=%%Name:~-6%%"
		Call Echo "%%f" %%Name%%
		Call "%ARC%" u -ibck -ep "%BoxArc%\%%Name%%" "%BoxIn%\%%f"
	)
pause
Exit /B
7-Zip
Код: Выделить весь код
@Echo Off
cls
	Set "BoxIn=Z:\Box_In"
	Set "BoxArc=Z:\Box_Arc"

	Set "ARC=C:\Program Files\7-Zip.21beta\7z.exe"
 
	For /F "usebackq delims=" %%f In (`2^>nul Dir "%BoxIn%\???_??????.*" /B /A:-D ^|FindStr /I /R /C:"^..._[0-9][0-9][0-9][0-9][0-9][0-9]"`) Do (
		Set "Name=%%~nf"
		Call Set "Name=%%Name:~-6%%"
		Call Echo "%%f" %%Name%%
		>nul Call "%ARC%" u -tzip "%BoxArc%\%%Name%%.zip" "%BoxIn%\%%f"
	)
pause
Exit /B

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


Последний раз редактировалось megaloman, 20-10-2021 в 20:42.

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

Отправлено: 17:52, 19-10-2021 | #3