shell脚本-监控端口是否开启

#!/bin/bash
#Description:
#Author: Batac
#Created time: 2020/11/17 21:20
# 监控端口是否开启  服务是否存在

port_status(){
temp_file=`mktemp port_status.XXX`
#1, 判断依赖命令是否存在
[ ! -x /usr/bin/telnet ] && echo "telnet: not found command" && exit 1

# 测试端口 $1 IP $2  端口
(telnet $1 $2 << EOF
quit
EOF
# telnet 对应的端口  并且将访问输出写入文件
) &>$temp_file  
# 判断文件中是否存在 ^]  这个是访问成功的标志
if egrep "\^]" $temp_file &>/dev/null;then
    # -e 表示后边有转移字符   \033[32m  给字体添加颜色
	echo -e "$1 $2 is \033[32m open \033[0m"
else
	echo -e "$1 $2 is \033[31m close \033[0m"
fi
# 删除临时文件
rm -f $temp_file
}

# 调用函数  切记把参数传入
port_status $1 $2

使用效果:

猜你喜欢

转载自blog.csdn.net/Batac_Lee/article/details/109754948