#!/bin/bash
port=$1
echo 你输入的端口号为:$port
#根据端口号查询对应的pid
pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');
#杀掉对应的进程,如果pid不存在,则不执行
if [ -n "$pid" ]; then
pname=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $2 }');
echo "根据端口查询出进程为:$pid进程为:$pname"
kill -9 $pid;
echo "$pid以杀死"
else
echo "未找到占用此$port端口进程"
fi
如关闭80端口:
./shutdown.sh 80调用
root@iZ2vjar]# ./shutdown.sh 80
你输入的端口号为:80
根据端口查询出进程为:30202进程为:java
30202以杀死
[root@iZ2vjarjar]#