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

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

Ветеран


Contributor


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

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


Как-то так. Пропишите свой путь к папке, число контролируемых файлов, их имена и объём в байтах, полный путь приложения.exe. Лог пишется в прописанную папку.
Код: Выделить весь код
@Echo Off
cls

Set "BoxIn=Z:\Post\Place"
Set "Program=Notepad.exe"

Set /A N=3

Set "F1=1a a044007aaa.xml"
Set "S1=561"

Set "F2=2aa 044018 jj.xml"
Set "S2=169422"

Set "F3=3aaa044042sxs.xml"  
Set "S3=30294"

Set "LogFile=%BoxIn%\%~nx0.log"


Set "OK=0"
FOR /L %%i IN (1,1,%N%) DO Call :Control "%%F%%i%%"  "%%S%%i%%"
If %OK%==0 (
	Echo +++ %Date% %Time% Control Successful
	Echo +++ %Date% %Time% Control Successful >>"%LogFile%"
	
	Echo:
	Echo Start You Program There
	Cd /D "%BoxIn%"
	Start "" "%Program%"
)

Pause
GoTo :Eof

:Control
	For %%f In ("%BoxIn%\%~1") Do Set "SN="%%~zf""

	If %SN%=="" Call :Mess "??? %Date% %Time% File Not Found  '%BoxIn%\%~1'" & Set "OK=1"
	If Not %SN%=="" If Not %SN%==%2 Call :Mess "--- %Date% %Time% File Has Wrong Size=%SN%  '%BoxIn%\%~1' (needs %2)" & Set "OK=1"
GoTo :Eof

:Mess
	Echo %~1
	Echo %~1 >>"%LogFile%"
GoTo :Eof
Если не хотите видеть на экране никакие сообщения, а только иметь записи в log-файл, уберите выделенные строки

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


Последний раз редактировалось megaloman, 14-07-2017 в 20:48.

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

Отправлено: 20:39, 14-07-2017 | #2