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