请编写一个shell脚本
编写一个shell脚本,完成以下功能:1,脚本运行后,要求用户输入一个C类子网,如:192.168.12,用ping命令测试此子网内的各IP的连通性3,将能ping通的I...
编写一个shell脚本,完成以下功能:1, 脚本运行后,要求用户输入一个C类子网,如:192.168.12, 用ping命令测试此子网内的各IP的连通性3, 将能ping通的IP地址存入goodhost文件中4, 将不能ping通的IP地址存入badhost文件中提示:1, 遍历子网一定是用循环,关键点在于IP的最后一位需要在循环中递增,然后用if语句来判断何时终止循环2, ping命令的默认行为是无休止的ping,除非手动终止,因此可以用参数使之只ping一次3, ping命令若遇到不能ping通的时候,默认4秒之后才返回无法ping通的提示,因此在整个子网有很多IP不能ping的情况下,脚本的运行时间会很长,需要添加参数修改这一时间,加快脚本运行速度4, 如何在脚本中判断是否ping通?5, 用if语句判断一个IP是否能ping通,然后决定将此IP地址写入到哪个文件(利用重定向符号“>>”)).....
展开
展开全部
条件写得倒是很详细的,但发现用脚本不一定要死要求,有时灵活一点更有效率。
如果觉得还不赖,就拿去用吧。
#!/bin/bash
echo "Please Enter a IP of C class"
read ip
i=1
while [[ True ]]
do
if [[ $i -gt 255 ]]; then
echo $i
exit 0
fi
echo "$ip.$i"
ping -c1 -w1 $ip.$i &>/dev/null && echo "$ip.$i">>goodhost || echo "$ip.$i">>badhost
i=`expr $i + 1`
done
如果觉得还不赖,就拿去用吧。
#!/bin/bash
echo "Please Enter a IP of C class"
read ip
i=1
while [[ True ]]
do
if [[ $i -gt 255 ]]; then
echo $i
exit 0
fi
echo "$ip.$i"
ping -c1 -w1 $ip.$i &>/dev/null && echo "$ip.$i">>goodhost || echo "$ip.$i">>badhost
i=`expr $i + 1`
done
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询