检查端口状态和发送电子邮件

时间:2015-08-24 08:07:58

标签: php shell email

我有一个shell脚本,每分钟检查一次端口状态。如果端口状态为down,则会发送电子邮件。但这将每分钟发送一次电子邮件,直到端口再次启动。但我希望在发送第一封邮件30分钟后发送电子邮件。我怎样才能做到这一点?我从shell脚本调用PHP文件来发送邮件。

nc -v -z -w 10 192.168.50.34 5038;

output=$?
# echo $output
php=`which php`

dt=`date`;


$php send_ast_status.php $output $dt


if [ $output == "0" ];
then 

#   echo 'asterisk is running'
    /etc/init.d/asterisk 'stop'

else 
#       echo 'asterisk not running'
      /etc/init.d/asterisk 'start'

fi

1 个答案:

答案 0 :(得分:0)

键入以下命令:telnet example.com 25查看结果:

如果端口25未被阻止,您将获得成功的220响应(文本可能会有所不同)。

尝试64.13.192.208 ...连接到example.com。

逃脱角色是' ^]'。 220 cl34.gs01.gridserver.com ESMTP Exim 4.63周二,2008年6月24日13:45:04 -0700

如果端口25被阻止,您将收到连接错误或根本没有响应。

尝试64.13.192.208 ... telnet:连接到地址64.13.192.208:连接被拒绝telnet:无法连接到远程主机