shell腳本自動檢測網(wǎng)絡(luò)掉線和自動重連
在ppp移植成功后,有時會出現(xiàn)ppp掉線等情況。這篇文章寫了一個自動檢測連接網(wǎng)絡(luò)的解決方法。
創(chuàng)建一個shell腳本,在里面添加一下內(nèi)容。(記得給操作權(quán)限)
#!/bin/sh //根據(jù)你自己的shell類型來選擇。 while true //先做一個死循環(huán) do ping -c 3 -I ppp0 172.16.1.11 >/dev/null //指定一個出口去ping服務(wù)器的局域網(wǎng)ip,將結(jié)果重定向到/dev/null里。 //-c 3 是指ping執(zhí)行3次后結(jié)束。 //-w 3 是指ping執(zhí)行3秒后結(jié)束。 if [ $? -eq 0 ];then //[]的兩邊都要有空格隔開 //當(dāng)ping成功了,它的返回值為0,什么也不用干。說明網(wǎng)絡(luò)暢通。 //$?是用來獲取函數(shù)返回值或者上一個命令的退出狀態(tài)。 echo "ppp0 is ready" sleep 30 //為了防止過度的占用cpu資源,選擇延遲一段時間。 else //當(dāng)不成功說明這個網(wǎng)絡(luò)或出口有問題。 echo "ppp0 is connecting" pppd call connectvpn //重新?lián)芴?,刷新這個出口。 ifconfig sleep 30 fi sleep 30 done
程序中加入了延時,是為了減少檢測所占用的cpu資源。本腳本是一分鐘檢測一次網(wǎng)絡(luò)狀況。
當(dāng)執(zhí)行shell時出現(xiàn)syntax error: unexpected “then” (expecting “done”)報錯是是因?yàn)榫幋a格式不對,重新手打一遍就應(yīng)該好了。
ps:linux檢測程序是否掛掉并自動重新運(yùn)行的腳本
編寫一個腳本替代應(yīng)用程序的運(yùn)行,也就是通過啟動腳本來啟動程序,并監(jiān)測程序是否掛掉,若掛掉則重新運(yùn)行
#!/bin/sh while true do ps -ef | grep "$PWD/app/auto_run.sh" | grep -v "grep" if [ "$?" -eq 1 ] then /home/root/app/auto_run.sh #啟動應(yīng)用,修改成自己的啟動應(yīng)用腳本或命令 echo "process has been restarted!" else echo "process already started!" fi sleep 10 done
總結(jié)
以上所述是小編給大家介紹的shell腳本自動檢測網(wǎng)絡(luò)掉線和自動重連,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
sed使用正則表達(dá)式進(jìn)行替換例子以及注意事項(xiàng)
在使用sed替換時,可以使用正則表達(dá)式分組來保留部分匹配內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于sed使用正則表達(dá)式進(jìn)行替換例子以及注意事項(xiàng)的相關(guān)資料,需要的朋友可以參考下2024-03-03
shell在指定目錄下批量執(zhí)行sql腳本的實(shí)例
今天小編就為大家分享一篇shell在指定目錄下批量執(zhí)行sql腳本的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06
shell腳本中執(zhí)行python腳本并接收其返回值的例子
這篇文章主要介紹了shell腳本中執(zhí)行python腳本并接收其返回值的例子,本文重點(diǎn)在于如何接收python腳本的返回值,需要的朋友可以參考下2014-08-08
Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖,本文獲取網(wǎng)頁快照使用phantomjs、生成縮略圖使用ImageMagick,需要的朋友可以參考下2015-02-02
Linux?Shell實(shí)現(xiàn)日志監(jiān)控與報警系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了?如何通過Linux?Shell腳本實(shí)現(xiàn)日志監(jiān)控與報警系統(tǒng)功能,文中的示例代碼簡潔易懂,有需要的小伙伴可以參考一下2024-12-12
Shell腳本調(diào)試?-n?-v?-x?-c的具體用法
本文主要介紹了Shell腳本調(diào)試?-n?-v?-x?-c的具體用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06

