并发检测主机ip存活脚本
#!/bin/bash
###################
# Check Active Host#######
###################
function CheckInput(){
if [ $# -ne ] ; then
return
else
return
fi
} function CheckIp(){
/bin/ipcalc -s -c $ &>/dev/null
return $?
} function PingIp(){
ping -c -W $ &>/dev/null
if [ $? -eq ] ; then
echo $ >> $TMP_ACTIVE
else
echo $ >> $TMP_DOWN
fi
} function PingAll(){
PrefixIP=$(echo $|awk -F '.' '{print $1"."$2"."$3"."}')
for ip in {..}
do
IP="${PrefixIP}${ip}"
PingIp $IP &
done
} function SelectPing(){
ENDIP=$(echo $|awk -F '.' '{print $NF}')
if [ $ENDIP -eq -o $ENDIP -eq ] ; then
PingAll $*
else
PingIp $*
fi
} function SortIp(){
while :
do
PING_NUM=$(ps -ef|grep ping|grep -v 'grep'|wc -l)
if [ $PING_NUM -eq ] ; then
`cat $TMP_ACTIVE|sort -t '.' -k -n > /tmp/active.host`
`cat $TMP_DOWN|sort -t '.' -k -n > /tmp/down.host`
rm -f $TMP_ACTIVE
rm -f $TMP_DOWN
break
fi
done
} function Show(){
ACTIVEIP=$(cat /tmp/active.host)
DOWNIP=$(cat /tmp/down.host)
if [ -s "/tmp/active.host" ] ; then
echo "Active Host:"
echo $ACTIVEIP|tr " " "\n"
else
echo "Down Host:"
echo $DOWNIP|tr " " "\n"
fi
}
function main(){
CheckInput $*
if [ $? -ne ] ; then
echo -e $"USAGE: $0 {ipaddress}\nExample:\n$0 192.168.1.10 will check 192.168.1.10 only\n$0 192.168.1.0 will check 192.168.1.1 - 192.168.1.254 "
else
CheckIp $*
if [ $? -ne ] ; then
echo "Please input correct ip address . such as 192.168.1.10 or 192.168.1.0"
else
TMP_ACTIVE=$(mktemp)
TMP_DOWN=$(mktemp)
>/tmp/active.host
>/tmp/down.host
SelectPing $*
SortIp
Show
rm -f /tmp/active.host
rm -f /tmp/down.host
fi
fi
} main $*
并发检测主机ip存活脚本的更多相关文章
- Shell脚本实现检测某ip网络畅通情况,实战用例
Shell脚本实现检测某ip网络畅通情况,实战用例 环境准备,linux shell 发送email 邮件:1.安装sendmailyum -y install sendmail安装好sendmail ...
- ctf线下赛中检测外来IP的shell脚本
该脚本可用于ctf线下赛中,用来检测攻击IP的接入,及时做出响应. #!/bin/bash #写自己队的ip ipA="172.22.60.230" ipB="172.2 ...
- Spring Cloud:多环境配置、eureka 安全认证、容器宿主机IP注册
记录一下搭建 Spring Cloud 过程中踩过的一些坑,测试的东西断断续续已经弄了好多了,一直没有时间整理搭建过程,时间啊~时间~ Spring 版本 Spring Boot:2.0.6.RELE ...
- 常用的主机监控Shell脚本
最近时不时有朋友问我关于服务器监控方面的问题,问常用的服务器监控除了用开源软件,比如:cacti,nagios监控外是否可以自己写shell脚本呢?根据自己的需求写出的shell脚本更能满足需求,更能 ...
- 【转】nagios使用带url的check_http检测主机
前一段时间在Cu论坛发现一个提问,问题是nagios关于检测主机http服务的.原帖地址http://bbs.chinaunix.net /forum.php?mod=viewthread&t ...
- 查看KVM宿主机上虚拟机的IP的脚本
查看KVM宿主机上虚拟机的IP的脚本 #!/bin/bash #Auth:liucx #ping当前网段内在线的主机,以便产生arp记录. .{..};do { >& }& do ...
- arp命令(windows ),nmap查看局域网内所有主机IP和MAC
ARP命令详解 ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可 ...
- 发起SSH攻击主机IP地址列表
发起SSH攻击主机IP地址列表 东北大学 http://antivirus.neu.edu.cn/scan/ssh.php 以下IP地址对SSH服务进行攻击,严重增加主机成为肉鸡的可能性.强烈建议网管 ...
- 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址;
package com.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.htt ...
随机推荐
- PHP switch的“高级”用法详解
只所以称为“高级”用法,是因为我连switch的最基础的用法都还没有掌握,so,接下来讲的其实还是它的基础用法! switch 语句和具有同样表达式的一系列的 IF 语句相似.很多场合下需要把同一个变 ...
- 监控SQL Server正在执行的SQL语句和死锁情况
原文:监控SQL Server正在执行的SQL语句和死锁情况 SELECT [Individual Query] = SUBSTRING(qt.TEXT, er.statement_start_off ...
- linux之ssh命令
ssh命令用于远程登录上Linux主机. 常用格式:ssh [-l login_name] [-p port] [user@]hostname更详细的可以用ssh -h查看. 不指定用户: ssh 1 ...
- UBIFS 术语
B+ tree: base head: budgeting: 空闲空间评估 bud: 一个日志使用的eraseblock cnode: commit: 更新index到flash上的过程 commit ...
- 玩转shell之符号篇
转:http://hi.baidu.com/hellosimple/item/21b31dfefd23e811e2e3bd47 在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ ...
- js延时函数setTimeout
实现一个延时执行的效果,现记录如下: <html> <head> <script type="text/javascript" src="/ ...
- 求逆序对数总结 & 归并排序
用归并排序方式 最原始的方法的复杂度是O(n^2). 使用归并排序的方式,可以把复杂度降低到O(nlgn). 设A[1..n]是一个包含N个非负整数的数组.如果在i〈 j的情况下,有A〉A[j],则( ...
- Myeclipse 编译等级
1.Java compiler level does not match the version of the installed Java project facet. 问题描述:编译等级不匹配 解 ...
- 如何安装Android SDK Emulator
1 下载并安装JDK,可以到官方网站寻找自己的对应版本下载 http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u1-downlo ...
- Linux组件封装(四)使用RAII技术实现MutexLock自动化解锁
我们不止一次写过这种代码: { mutex_.lock(); //XXX if(....) return; //XXX mutex_.unlock(); } 显然,这段代码中我们忘记了解锁.那么如何防 ...