安装 依赖程序 sudo apt install lsof -y
#!/bin/bash
#netstat -lntp
tishitishitishi="如果你的系统拥有ROOT权限"
echo -e "${tishitishitishi} 把保存后的脚本 sudo lsof 替换成lsof也就是不需要sudo \n并且把包含\$USER的行删掉"
echo "${tishitishitishi} 这一行 sudo \${dockerduankou}/kill/PORT-DATA.log.sh 把sudo删掉"
echo -e "需要管理员权限,请输入开机密码 ${tishitishitishi}请忽略"
date +%Y年%m月%d日%H:%M:%S
#------------------------------------------------------
denden_d="======================================================"
dockerduankou="/tmp/docker-duankou4d6w4wq"
rm -rf ${dockerduankou}
rm -rf "$HOME/端口占用的程序.txt"
mkdir -p ${dockerduankou}/kill
#################
# 输出检测端口日志
#################
#更具自己需求修改
PORT_0="1314 "
PORT_1="8085 "
PORT_2="888 "
PORT_3="8888 "
PORT_4="10012 "
PORT_5="37347 "
PORT_6="9000 "
PORT_7="9200 "
PORT_8="80 "
PORT_9="21013 "
duankouA="0"
#################
# 端口 81
#################
duankou0()
{
#应为一些端口是ROOT权限启动的,还有的是用户权限启动的,合并写在一起
sudo lsof -i :${PORT_0} |grep "root" |awk '{print $2}' >> ${dockerduankou}/0.txt
sudo lsof -i :${PORT_0} |grep "$USER" |awk '{print $2}' >> ${dockerduankou}/0.txt
sudo lsof -i :${PORT_0} >> $HOME/端口占用的程序.txt
#0.txt是0行就是没有被占用
Duankou_LONG_0=$(cat ${dockerduankou}/0.txt | wc -l)
if [[ ! X${duankouA} = X${Duankou_LONG_0} ]];then
echo -e "\033[103;01;31m端口 ${PORT_0}已被占用\033[0m"
else
echo -e "\033[42;01;93m端口 ${PORT_0}未被占用\033[0m"
fi
}
duankou0
#################
# 端口 8085
#################
duankou1()
{
sudo lsof -i :${PORT_1} |grep "root" |awk '{print $2}' >> ${dockerduankou}/1.txt
sudo lsof -i :${PORT_1} |grep "$USER" |awk '{print $2}' >> ${dockerduankou}/1.txt
sudo lsof -i :${PORT_1} >> $HOME/端口占用的程序.txt
Duankou_LONG_1=$(cat ${dockerduankou}/1.txt | wc -l)
if [[ ! X${duankouA} = X${Duankou_LONG_1} ]];then