Olası Çoğalt:
Linux'ta belirli bir bağlantı noktasını kullanan işlemi bulma
Ubuntu Linux 11.04 kullanıyorum. 4444 numaralı bağlantı noktasında çalışan işlemi bulan ve ardından işlemi sonlandıracak bir kabuk betiği ifadesini nasıl yazarım?
Olası Çoğalt:
Linux'ta belirli bir bağlantı noktasını kullanan işlemi bulma
Ubuntu Linux 11.04 kullanıyorum. 4444 numaralı bağlantı noktasında çalışan işlemi bulan ve ardından işlemi sonlandıracak bir kabuk betiği ifadesini nasıl yazarım?
Yanıtlar:
lsof
Süreci bulmak için kullanabilirsiniz :
lsof -t -i:4444
4444 numaralı bağlantı noktasını dinleyen işlemin sadece bir kısmını listeleyebilirdi.
kill `lsof -t -i:4444`
eğer cesur olsaydın.
Sen kullan lsof
:
# lsof -n | grep TCP | grep LISTEN | grep 4444
Çıktı şöyle bir şey olacak:
pname 16125 user 28u IPv6 4835296 TCP *:4444 (LISTEN)
İlk sütunun işlem adı, ikinci sütunun işlem kimliği olduğu yer. Daha sonra çıktıyı ayrıştırır, işlem kimliğinin (PID) ne olduğunu öğrenin ve kill
onu öldürmek için komutu kullanın.
Alternatif olarak , sisteminizde mevcut netstat -ap
değilse de kullanabilirsiniz lsof
(düzenli olarak çalıştığım bir busybox sisteminde olmadığı için).
kill -9 `netstat -lanp --protocol=inet | grep 4444 | awk -F" " '{print $7}' | awk -F"/" '{print $1}'`
Netstat'ı kullanarak, sayısal bağlantı noktalarına ve üst işlemlere sahip dinleme INET soketlerini listelemek için kullanılır. Dize 4444 için filtreler, 7. sütunu (pid / işlem adı) çıkarır ve daha sonra "/" ile ayırır. Emri öldürmek için bunu geçiyor.