Копирование файла по расписанию и его отправка по почте
Есть одна процедура, которая выполняется каждый день и хотелось бы автоматизировать этот процесс. В CMD\BAT не силен, не моя сфера; но предполагаю что эту задачу можно решить именно и помощью батника.
Суть: каждый день приблизительно в 16-00 в расшаренной папке (путь LSLOG\E$\Log-files; LSLOG - название кластера, адрес пусть будет 127.0.0.1) появляется файл (ну допустим test1.log). Его необходимо автоматом перебросить в другую похожую папку (тоже есть назв. кластера, адресс). При этом время появления файла, его название и время переброса файла в другую папку надо записать в экселевский файл и отправить его по адресу, по почте. Собственно говоря все. :)
|
Код:
@echo off
rem Время с небольшим запасом на "приблизительно в 16-00"
Set CheckTime=16:05
rem Каталог, где файлики "появляются"
Set Src="\\LSLOG\E$\Log-files\"
rem Каталог, куда их "перебрасывать"
Set Dst="\\127.0.0.1\C$\TEMP\"
Set Mask=*.log
if not exist "%~dpn0.csv" echo Created;File Name;Moved>"%~dpn0.csv"
pushd %Src%
for /f "tokens=* delims=" %%f in ('dir /b /a-d %Mask%') do (
move /Y %%f %Dst%>nul 2>>"%~dpn0.err"
echo %%~tf;%%f;%Date% %Time:~0,-3%>>"%~dpn0.csv"
)
popd
at %CheckTime% %ComSpec% /c start "" /low /min %self%
на выходе получаем файлик *.cvs (по названию "батника"). Как отправить его по почте - смотрите по форуму, например здесь: Результаты поиска по тегу "почт*"
* файл запускаем, он делает немедленную проверку и ставит себя в задания шедулера в ближайшее указанное время, т.е. запустили в 5 вечера - "автозапуск" будет завтра в 16:05, а если запустили в 3 дня - повтор будет сегодня же, в 16:05 по расписанию ;)
|
NiOl, переменная self не определена ;)
|
Цитата:
Цитата amel27
NiOl, переменная self не определена ;) »
|
Черт, вот что значить копипэстить второпях... и тестить через " echo [command] :sorry:
LokkyZ, Ошибочка! После " @echo off" надо дописать строку " set Self="%~0"".
хотя здесь Shift не используется и можно было обойтись вызовом просто "%~0"
|
Господа
аможет кто знает такой сайт на который можео отправить заархивированый документ и там выставить расписание что бы этот документ отправился например 1 августа когда сам человек будет в другом городе или стране или просто что бы не забыть ну и прописать там адреса куда этот документ должен быть отправлен
|
gmail вроде позволяет письма слать по расписанию
|
Цитата:
Цитата ferget
gmail вроде позволяет письма слать по расписанию »
|
Ну вроде это не то, а тут задача в том что бы именно с какого то стороннего сайта отправлять бы а не сосвоего компа, что бы этого документа у тебя на компе и не было в итоге
|
Tuchin.S.A |
03-10-2011 16:49 1765024 |
Почему-то не копирует по времени, этот "скрипт" должен висеть где-нибудь в процессах или службах?
|
Время: 00:53.
© OSzone.net 2001-