linux ping多个地址并将网络结果记录出.
2015-01-15 22:06
197 查看
如有一文件ip.txt,其内容为:
10.0.16.1
10.0.16.2
……
10.0.16.x
编写ping_test.sh,内容如下:
其中ping4次某一个地址,如果ping通就打印其ip pass,如果没有ping通就打ip loss。(ping命令执行后结果$?,如果执行成功就是0,不成功就是非0)。
但上面有一个问题就是如果ping一个网络地址不可达,就会直接打印出connect: 网络不可达,原因是只把执行结果指向了/dev/null,而没有标准错误输出到/dev/null。
如下:
1> stdout:表示标准输出,默认是1
2> stderr:表示标准错误
& :表示等同于,2>&1,表示标准错误重定向,等同于标准输出
所以将改为以下内容
ping -c 4 $ip >/dev/null 2>&1 && echo "$ip pass" || echo "$ip loss"
当然也可写为(传说效率会低很多)
ping -c 4 $ip >/dev/null 2>/dev/null && echo "$ip pass" || echo "$ip loss"
最后可修改为每次传一个IP文件进行查看,并且检查到不是一个参数时给出提示。
#!/bin/sh
if [ $# -ne 1 ];then
echo "Please enter a paramter!"
else
for ip in `cat $1`
do
ping -c 4 $ip >/dev/null 2>&1 && echo "$ip pass" || echo "$ip loss"
done
fi
10.0.16.1
10.0.16.2
……
10.0.16.x
编写ping_test.sh,内容如下:
#!/bin/sh for ip in `cat ip.txt` do ping -c 4 $ip >/dev/null && echo "$ip pass" || echo "$ip loss" done
其中ping4次某一个地址,如果ping通就打印其ip pass,如果没有ping通就打ip loss。(ping命令执行后结果$?,如果执行成功就是0,不成功就是非0)。
但上面有一个问题就是如果ping一个网络地址不可达,就会直接打印出connect: 网络不可达,原因是只把执行结果指向了/dev/null,而没有标准错误输出到/dev/null。
如下:
1> stdout:表示标准输出,默认是1
2> stderr:表示标准错误
& :表示等同于,2>&1,表示标准错误重定向,等同于标准输出
所以将改为以下内容
ping -c 4 $ip >/dev/null 2>&1 && echo "$ip pass" || echo "$ip loss"
当然也可写为(传说效率会低很多)
ping -c 4 $ip >/dev/null 2>/dev/null && echo "$ip pass" || echo "$ip loss"
最后可修改为每次传一个IP文件进行查看,并且检查到不是一个参数时给出提示。
#!/bin/sh
if [ $# -ne 1 ];then
echo "Please enter a paramter!"
else
for ip in `cat $1`
do
ping -c 4 $ip >/dev/null 2>&1 && echo "$ip pass" || echo "$ip loss"
done
fi
相关文章推荐
- Linux下长时间ping网络加时间戳并记录到文本
- Linux下长时间ping网络加时间戳并记录到文本
- Linux下长时间ping网络加时间戳并记录到文本
- Linux下smokeping网络监控环境部署记录
- Linux下长时间ping网络加时间戳并记录到文本
- Linux下长时间ping网络加时间戳并记录到文本(转)
- Linux下长时间ping网络加时间戳并记录到文本
- Linux下长时间ping网络加时间戳并记录到文本
- Linux网络编程中的地址问题
- linux网络地址转换函数
- LINUX_DHCP为不同地址范围的主机分配不同的网络参数
- [Linux网络编程学习笔记]套接字地址结构
- linux中的网络地址结构
- Linux网络编程中的地址问题
- linux网络地址配置
- 转载只为记录经典之Linux网络编程必看书籍推荐
- Linux用ICMP协议实现简单Ping网络监测功能
- LINUX配置网络IP地址。成功设置。
- Linux 2.4 NAT (网络地址转换) HOWTO(三)
- fping 命令参考--网络工具--快速ping--windows&linux