shell腳本測(cè)試某網(wǎng)段內(nèi)主機(jī)連通性
1. 測(cè)試192.168.4.0/24整個(gè)網(wǎng)段的連通性(while版本)
#!/bin/bash #Author:丁丁歷險(xiǎn)(Jacob) #定義變量i控制循環(huán)次數(shù),i從1開(kāi)始循環(huán),每循環(huán)一次,i自加1,直到i等于254循環(huán)退出 #在每次循環(huán)中對(duì)一個(gè)IP進(jìn)行ping測(cè)試,如果ping通,提示主機(jī)是UP的 #如果無(wú)法ping同,則提示主機(jī)是down的 #ping命令的-c選項(xiàng)控制ping測(cè)試的次數(shù),-c2表示對(duì)目標(biāo)主機(jī)執(zhí)行2次ping測(cè)試 #ping命令的-i選項(xiàng),控制多次ping測(cè)試的間隔時(shí)間默認(rèn)為1秒,-i0.3可以提升ping的測(cè)試效率 #ping命令的-W選項(xiàng),可以控制超時(shí)時(shí)間,默認(rèn)一個(gè)主機(jī)無(wú)法ping通,需要等很長(zhǎng)的超時(shí)時(shí)間, #才會(huì)提示無(wú)法ping通,使用-W1,設(shè)置超時(shí)時(shí)間為1秒。 i=1 while [ $i -le 254 ] do ping -c2 -i0.3 -W1 192.168.4.$i &>/dev/null if [ $? –eq 0 ];then echo "192.168.4.$i is up" else echo "192.168.4.$i is down" fi let i++ done
2. 測(cè)試192.168.4.0/24整個(gè)網(wǎng)段的連通性(for版本)
#!/bin/bash #Author:丁丁歷險(xiǎn)(Jacob) #定義for循環(huán)變量i,執(zhí)行循環(huán)次數(shù)為254次,i從1循環(huán)到254 #每次循環(huán)對(duì)某一臺(tái)目標(biāo)主機(jī)測(cè)試ping的連通性,ping命令的語(yǔ)法格式參考前面的while版本 for i in {1..254} do ping -c2 -i0.3 -W1 192.168.4.$i &>/dev/null if [ $? –eq 0 ];then echo "192.168.4.$i is up" else echo "192.168.4.$i is down" fi done
3. 測(cè)試192.168.4.0/24整個(gè)網(wǎng)段的連通性(多進(jìn)程版本)
#!/bin/bash #Author:丁丁歷險(xiǎn)(Jacob) #定義一個(gè)函數(shù),ping某一臺(tái)主機(jī),并檢測(cè)主機(jī)的存活狀態(tài),ping語(yǔ)法格式參考前面的while版本 myping(){ ping -c2 -i0.3 -W1 $1 &>/dev/null if [ $? -eq 0 ];then echo "$1 is up" else echo "$1 is down" fi } for i in {1..254} do myping 192.168.4.$i & done #使用&符號(hào),將執(zhí)行的函數(shù)放入后臺(tái)執(zhí)行 #這樣做的好處是不需要等待ping第一臺(tái)主機(jī)的回應(yīng),就可以繼續(xù)并發(fā)ping第二臺(tái)主機(jī),依次類推。
總結(jié)
以上所述是小編給大家介紹的shell腳本測(cè)試某網(wǎng)段內(nèi)主機(jī)連通性,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Linux下is not in the sudoers file的解決
當(dāng)我們使用sudo命令切換用戶的時(shí)候可能會(huì)遇到提示以下錯(cuò)誤:用戶名 is not in the sudoers file.本文給大家分享原因分析及解決方案,感興趣的朋友跟隨小編一起看看吧2023-02-02Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁(yè)快照并生成縮略圖
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁(yè)快照并生成縮略圖,本文獲取網(wǎng)頁(yè)快照使用phantomjs、生成縮略圖使用ImageMagick,需要的朋友可以參考下2015-02-02Linux shell命令統(tǒng)計(jì)某列去重后的值
今天小編就為大家分享一篇關(guān)于Linux shell命令統(tǒng)計(jì)某列去重后的值,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02Linux 中C語(yǔ)言getcwd()函數(shù)的用法
這篇文章主要介紹了Linux 中C語(yǔ)言getcwd()函數(shù)的用法的相關(guān)資料,需要的朋友可以參考下2017-04-043000字掃盲shell基礎(chǔ)知識(shí)(新手必備)
這篇文章主要介紹了3000字掃盲shell基礎(chǔ)知識(shí),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2020-06-06Shell腳本查看網(wǎng)卡實(shí)時(shí)流量
這篇文章主要介紹了Shell腳本查看網(wǎng)卡實(shí)時(shí)流量,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-12-12