Показать полную графическую версию : Если пинг не идет тогда сообщить по ел.почте
Привет. не могу разобраться каким образом сравнять массивы.
и так
$ping = ping add.no-ip.biz; $result = ping add.no-ip.biz ; $ping;$result
далее ну никак
if ($result[0] --eq $ping[0]) {echo 'Есть связь'} else {echo 'Нет связи'}
не могу сравнить, что бы если данные одинаковы то могу ничего не делать, а если нет то другие действия (в дальнейшем отправка ел. почты)
а если if (Compare-Object $result $ping) {echo 'yes'} else {echo 'no'} то все ровно есть изменения хотя вроде однаковые результаты
Что значит:
сравнять массивы »
? Опишите словами, что требуется. Не как Вы решаете, а саму задачу.
))
Хочу в файлик повершел написать процедуру, которая пингует определенный айпи адрес, если пинг проходит значит можно приостановить скрипт, а если не проходит то отправляем сообщение по електронной почте, что связи нет с айпи адресом
этот файлик я буду запускать с помощью планировщика заданий через определенной время
if(!(Test-Connection ya.ru -Quiet)) {
Send-MailMessage -To "User01 <user01@example.com>" -From "User02 <user02@example.com>" -Subject "PING FAIL!!!" -SmtpServer smtp.fabrikam.com
}
milligan
04-07-2014, 09:35
if(!(Test-Connection ya.ru -Quiet)) {
Send-MailMessage -To "User01 <user01@example.com>" -From "User02 <user02@example.com>" -Subject "PING FAIL!!!" -SmtpServer smtp.fabrikam.com
}
перед Send-MailMessage разве не нужно указать SMTP сервер?
$PSEmailServer = "FQDN"
Не нужно, т.к. указан параметр -SmtpServer smtp.fabrikam.com
ту такие дела, что провайдер блокирует 25 порт у меня, а smtp сервера требуют tls, то как быть в данном случаи?!
и не могу понять что значит второй User02 ? Копия типа?
спасибо большое за наводку, сделал немного по другому, проверка доступен ли адрес оставил, а вот последующую отправку почты с сообщение сделал вот http://copyraite.blogspot.com/2013/09/blog-post.html так
в итоге получилось что если недоступный то будет вызываться скрипт с blat, что по ссылке, спасибо
но думаю если бы кто то подсказал как в приведенном в ответе скрипте можно было указать порт отправки то вышло бы и с помощью повершела
-Port но что то не получается указать с разными ошибками, приведите пример будьте добры
Ua-life, зачем Вам «Blat.exe» при возможности использовать в PoSH как собственный командлет «Send-MailMessage», так и CDO?!
Sending E-mail via Powershell script - Techniatures - Site Home - TechNet Blogs (http://blogs.technet.com/b/techniatures/archive/2012/08/13/sending-e-mail-via-powershell-script.aspx)
зачем Вам » так вот и я думаю зачем )) на быструю руку сделал так, а сейчас разбираюсь как с повершел
вышло таким образом $PSEmailServer = "smtp..ru"
if(!(Test-Connection .no-ip.biz -Quiet)) {
Send-MailMessage -From ".sklad@mail.ru" -To "@hotmail.com" -Subject "текст!" -Body "Address not available .no-ip.biz" -PORT "587"
}
спасибо мужики
кстати, а как скрыть появления повершел окна при вызове с планировщика?
а ладно, через свойства ярлыка попробую
тюю, а теперь при выполнении скрипта "Send-MailMessage : Неправильная последовательность команд."
да и + в планировщике не указать на ярлык задачи, а значит свойства ярлыка не помогут для скрытия команды выпонения
через секунду отправило письмо ... странно ...
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.