@echo off :: перебираем файлы начинающиеся на 2 буквы с подчеркиванием и расширением err for %%a in (??_*.err) do set "fn=%%a" && call:guesswho & call:sendmail goto:eof :guesswho :: выбираем адресата по двум буквам set "eMail=" if /i "%fn:~0,2%" == "AL" set "eMail=a@example.com" if /i "%fn:~0,2%" == "BL" set "eMail=b@example.com" if /i "%fn:~0,2%" == "CL" set "eMail=c@example.com" if /i "%fn:~0,2%" == "DL" set "eMail=d@example.com" if /i "%fn:~0,2%" == "EL" set "eMail=e@example.com" goto:eof :sendmail :: если адресат не выбран то и отправлять ничего не будем if not defined eMail ( echo Error: unknown prefix "%fn:~0,2%" & goto:eof) :: текст письма set body=-body "mail body: file with error" :: тема письма set subj=-s "Error file %fn%" :: smtp сервер set server=-server smtp.localhost :: имя пользователя set user=-u username@server.com :: пароль set pass=-pw password :: из следующей строки надо убрать echo вначале echo blat - %body% -to %eMail% %subj% %server% %user% %pass% -attach %fn% goto:eof |