Cara membunuh proses dengan port di MacOS, ala fuser -k 9000 / tcp

14

Di linux saya bisa mematikan proses hanya dengan mengetahui port yang digunakannya fuser -k 9000/tcp, bagaimana saya bisa melakukan hal yang sama pada MacOS?

Keris
sumber

Jawaban:

19
lsof -P | grep ':PortNumber' | awk '{print $2}' | xargs kill -9

Ubah PortNumberke port aktual yang ingin Anda cari.

stefano
sumber
2
Saya hanya perlu menambahkan -9sampai akhir untuk mendapatkan ini berfungsi, tapi saya percaya itu adalah karena sifat dari aplikasi mendengarkan dan tidak umumnya merekomendasikan latihan, untuk kill -9itu.
Kris
@Kris - lsof -P | grep ': NumberOfPort' | awk '{print $ 2}' | xargs kill -9 bekerja!
ace.
11

Menambahkan flag -t dan -i ke lsof akan lebih mempercepatnya dengan menghilangkan kebutuhan grep dan awk.

lsof -nti:NumberOfPort | xargs kill -9
Zlemini
sumber
2
Bekerja dan lebih ringkas daripada jawaban yang diterima!
Kaya Besar
1
JAUH
2

Tambahkan -n ke lsof dan Anda menghapus pencarian DNS terbalik dari perintah dan mengurangi waktu menjalankan dari menit ke detik.

lsof -Pn | grep ':NumberOfPort' | awk '{print $2}' | xargs kill -9
stevehollx
sumber
1
  1. Periksa port Anda terbuka atau tidak oleh

sudo lsof -i: {PORT_NUMBER}

COMMAND PID     USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
java    582 Thirumal  300u  IPv6 0xf91b63da8f10f8b7      0t0  TCP *:distinct (LISTEN)

2. Tutup port dengan mematikan proses PID

sudo kill -9 582
Thirumal
sumber
1

Anda dapat melihat apakah port jika dibuka dengan perintah ini

 sudo lsof -i :8000

di mana 8000 adalah nomor port

Jika port terbuka, itu harus mengembalikan string yang berisi ID Proses (PID).

Salin PID ini dan

kill -9 PID

Jika Anda perlu melihat semua port yang terbuka, Anda dapat melakukan Port Scan di aplikasi Network Utility.

rohanharikr
sumber
0

Anda dapat menggunakan kill -9 $(lsof -i:PORT -t) 2> /dev/null, di mana PORT adalah nomor port Anda yang sebenarnya. Ini akan mematikan proses yang berjalan pada port yang Anda berikan.

Epk
sumber
Anda mengulangi jawaban lain
yass