設計一個腳本,監控遠端的一台機器(假設ip為123.23.11.21)的存活狀态,當發現當機時發一封郵件給你自己。
提示:
1. 你可以使用ping指令 ping -c10 www.baidu.com
2. 發郵件的指令是 echo "郵件内容" |mail -s "主題" [email protected]
3. 腳本可以搞成死循環,每隔30s檢測一次
<code>#!/bin/bash</code>
<code>#Remote monitoring.If the network is broken,email me~</code>
<code>#2015/07/23 </code>
<code>ping</code> <code>-c10 www.baidu.com > 33.log</code>
<code>t=$(</code><code>awk</code> <code>'{print $1}'</code> <code>33.log)</code>
<code>while</code> <code>[ </code><code>"1"</code> <code>= </code><code>"1"</code> <code>]</code>
<code>do</code>
<code> </code><code>if</code> <code>[ ! -z $($t) ];</code><code>then</code>
<code> </code><code>echo</code><code>" "</code>
<code> </code><code>else</code>
<code> </code><code>echo</code> <code>"DiaoXianLe"</code> <code>|mail -s </code><code>"down"</code> <code>[email protected]</code>
<code> </code><code>fi</code>
<code> </code><code>sleep</code> <code>30</code>
<code>done</code>
上一個寫法有一個錯誤,就是發郵件都是30s一次了。。。不合适,再寫一個修改版的
<code>#2015/07/23</code>
<code> </code><code>t=$(</code><code>awk</code> <code>'{print $1}'</code> <code>33.log)</code>
<code> </code><code>sleep</code> <code>30</code>
<code> </code><code>break</code><code>;</code>
<code> </code><code>echo</code> <code>"DiaoXianLe"</code> <code>|mail -s </code><code>"down"</code> <code>[email protected]</code>
這樣就隻會發一個郵件給我了
本文轉自 聽丶飛鳥說 51CTO部落格,原文連結:http://blog.51cto.com/286577399/1677438