pingshell腳本
Ⅰ 請幫忙使用shell寫一個ping檢查腳本,手動從1 ping到254 太耗時間. 希望有腳本來代替這個過程.
我用 VBS 給你寫了一個:
setobj=wscript.createObject("WScript.Shell")
forcount=1to254
obj.Run"ping192.168.1."&count,,true
next
自己新建一個 vbs 文件,把上面代碼拷貝進去,然後雙擊運行;
上面代碼自動從 192.168.1.1 開始 ping;
一直 ping 到 192.168.1.254;
如果想自定義 ping 的欄位,可以自行修改裡面的字元串的 ip 地址;
或者直接用我上傳給你的寫好的 vbs 文件;
Ⅱ 怎麼用shell腳本ping一個域名是否能通
#!/bin/bash
domain_name="www..com"
ping $domain_name -c 10
if [ $? -eq 0 ]
then
echo "connet $domain_name success"
else
echo "connet $domain_name failed"
ping $domain_name -c 10意為ping10次
Ⅲ 寫個LINUX的SHELL 腳本,要求:PING 一個網站地址,把結果寫到另一個文本文件中,怎麼寫,請教,在線等
ping -c 5 www..com >ping.txt,其中通斷過程可以用grep命令從txt文件中查找並加以判斷。
Ⅳ 如何使用shell 批量ping域名,生成一個結果文件
腳本:
#!/bin/sh
filename=domains.txt
ping_count=3
whilereaddomain;do
x=$(ping-W1-c$ping_count$domain2>/dev/null|grep-E"(PING)|(loss)")
loss=$(echo"$x"|grep"loss"|awk'{printf"%s",substr($6,1,length($6)-1)}')
if[$loss-eq100];then
echo"$x"|grep"PING"|awk'{printf"%snoping ",$2}'
else
echo"$x"|grep"PING"|awk'{printf"%s%s ",$2,substr($3,2,length($3)-2)}'
fi
done<$filename
可適當調整每個域名 ping 的次數(ping_count),以保證准確度和性能。
數據文件:
cat domains.txt
www..com
www.taobao.com
www.qq.com
www.d.com
結果:
www..com 14.215.177.38
www.taobao.com 183.61.241.252
www.qq.com 59.37.96.63
www.d.com no ping
另:我理解那個「地名」應該是「域名」誤寫,如果真的需要地名,可以藉助 whois 命令,甚至 IP 資料庫(比如純真資料庫)。
Ⅳ Linux下shell腳本PING命令只要延遲高於100ms就發送個郵件
#!/bin/bash第三行Timeout_limit值寫錯了,應該是100哈,代碼提交了不能改了。你這個不需要把延遲結果保存在文件的,而是應該需要作定時檢測的。
Timeout=0;
Timeout_limit=1;
Timeout_flag=0;
IP="8.8.8.8"
while [ 1 ]
do
# 取平均延遲的整數位
Timeout="`ping $IP -c 3 | grep 'min/avg/max/mdev'|awk '{print $4}'|cut -b ƍ'`"
if [ $Timeout -ge $Timeout_limit ] && [ $Timeout_flag -ne 1 ]; then
echo ping timeout, average delay=$Timeout ms
mail -s 'Ping Delay' 郵箱 < ar/log/boot.log
Timeout_flag=1
fi
if [ $Timeout -lt $Timeout_limit ] && [ $Timeout_flag -ne 0 ]; then
echo ping recovery, average delay=$Timeout ms
mail -s 'Ping recovery' 郵箱 < ar/log/boot.log
Timeout_flag=0
fi
sleep 5
done