Carlos S wrote:
I am writing a small script to kill process(es) listening on
particular port number. Here I am particularly looking at Java
servlet-containers like Tomcat and JBoss, which sometimes don't
complete their shutdown process and it still shows up as running
process with ps or netstat. This needs to be kill-ed and for that
knowing pid of that process is necessary. The netstat by default
doesn't give only pid(s), so one has to use sed/awk/tr like utility to
extract pid info. Does anyone know any program/utility which gives
pid(s) based on listening port numbers? Or is there any option in
netstat that I am missing?

Thanks,
CS.

fuser will do what you want. If you were looking for something listening on port 80, for instance:

[r...@server ~]# fuser -n tcp 80
80/tcp:               3420  3718  3719  3721  3722  3723  3725  3726  3727
[r...@server ~]#

The banner ( "80/tcp:" ) is sent to STDERR and the actual PIDs to STDOUT, so you could do something like this:

for procpid in $( fuser -n tcp 80 2>/dev/null )
do
        kill ${procpid}
done


fuser requires root access.

For more, "man fuser"

--
Jay Leafey - jay.lea...@mindless.com
Memphis, TN

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos

Reply via email to