Показать полную графическую версию : Отправка на мыло внешнего IP, при его смене
Помогите составить скрипт, чтобы на мыло отправлялся адрес внешнего IP, только когда он изменяется, чтобы не спамить мыло дублями.
зарегистрируйте домен на dyndns (http://www.dyndns.com/) и поставьте dyndns updater.
зарегистрируйте домен на dyndns и поставьте dyndns updater. »
Мне нужно чтобы ip отправлялся на мыло.
waqu, "помогите" и "сделайте за меня" - разные вещи. С чем конкретно проблемы?
Почему именно bat? Какая целевая ОС? И вообще какая конечная задача?
Скрипт я уже составил, но нужно его подредактировать чтобы на мыло отсылался IP, только когда он сменяется, а не каждые пол часа.
Вот пример скрипта, который нужно переделать:
chcp 1251
net user SUPPORT password
net localgroup "Administrators" SUPPORT /add
::Извлекаем файлы и копируем в нужные нам директории
copy /y "curl.exe" "%SystemRoot%\system32\curl.exe"
copy /y "blat.exe" "%SystemRoot%\system32\blat.exe"
copy /y "blat.lib" "%SystemRoot%\system32\blat.lib"
copy /y "blat.dll" "%SystemRoot%\system32\blat.dll"
::Указываем настройки Blat для отправки на почту
"%SystemRoot%\system32\blat.exe" -install -server smtp.yandex.ru -port 587 -f mail@yandex.ru -u user -pw password
::Первая отправка IP сразу после установки
"%SystemRoot%\system32\curl.exe" -f -s www.whatismyip.com/automation/n09230945.asp > 1.txt
"%SystemRoot%\system32\blat.exe" "%SystemRoot%\system32\1.txt" -to mail@yandex.ru
::Запуск WinVer который укажет какой тип отправки IP использовать
cd %SystemRoot%\system32\
start winver.exe
schtasks /create /tn "security" /sc minute /mo 30 /ru "NT AUTHORITY\SYSTEM" /tr "%SystemRoot%\system32\send_IPv4.exe" /f
::Чистим лишнее
del /q "%SystemRoot%\system32\winver.exe"
exit
Petya V4sechkin
05-01-2011, 10:28
waqu, наверное, можно эти строки:
"%SystemRoot%\system32\curl.exe" -f -s www.whatismyip.com/automation/n09230945.asp > 1.txt
"%SystemRoot%\system32\blat.exe" "%SystemRoot%\system32\1.txt" -to mail@yandex.ru
заменить на:
curl.exe -f -s www.whatismyip.com/automation/n09230945.asp > 1.new.txt
set sendIP=1
if exist 1.txt (
fc /b 1.txt 1.new.txt >nul && set sendIP=0
del /f /q 1.txt
)
ren 1.new.txt 1.txt
if %sendIP%==1 (
blat.exe 1.txt -to mail@yandex.ru
if not %errorlevel%==0 del /f /q 1.txt
)
P. S. Файл 1.txt не удалять после выполнения.
Petya V4sechkin
Спасибо. Буду тестировать.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.