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

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

Ветеран


Contributor


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

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


biffick,
Код: Выделить весь код
@Echo off
Set "Arc="%ProgramFiles%\WinRar\WinRar.exe" e -y"

Call :UnArc "Z:\Soft_Arc\GeoLiteCity.dat.gz" "GeoLiteCity.dat" "Z:\1\" "Z:\2\" "Z:\3\" "Z:\4\"
Call :UnArc "Z:\Soft_Arc\GeoIP.dat.gz" "GeoIP.dat" "Z:\1\" "Z:\2\" "Z:\3\" "Z:\4\"

GoTo :Eof

:UnArc
	If Not Exist %1 (Echo %1 Not Exist &Exit /B 404)

	Md %3 2>nul 
	Pushd %3 
	%Arc% %1 %2
	Set /A Out=%ErrorLevel%
	Popd
	If Not %Out%==0 Exit /B %Out%
	Set "FName=%~3\%~2"

	:Begin
		Shift /3
		If "%~3"=="" Exit /B %Out%
		Md %3 2>nul
		Copy "%FName%" %3 >nul
		Set /A Out+=%ErrorLevel%
	GoTo :Begin 
Exit /B %Out%
Количество и имена выходных папок произвольно, как укажете в параметрах

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

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

Отправлено: 23:41, 16-03-2018 | #9