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?
14
lsof -P | grep ':PortNumber' | awk '{print $2}' | xargs kill -9
Ubah PortNumber
ke port aktual yang ingin Anda cari.
-9
sampai akhir untuk mendapatkan ini berfungsi, tapi saya percaya itu adalah karena sifat dari aplikasi mendengarkan dan tidak umumnya merekomendasikan latihan, untukkill -9
itu.Menambahkan flag -t dan -i ke lsof akan lebih mempercepatnya dengan menghilangkan kebutuhan grep dan awk.
sumber
Tambahkan -n ke lsof dan Anda menghapus pencarian DNS terbalik dari perintah dan mengurangi waktu menjalankan dari menit ke detik.
sumber
2. Tutup port dengan mematikan proses PID
sumber
Anda dapat melihat apakah port jika dibuka dengan perintah ini
di mana 8000 adalah nomor port
Jika port terbuka, itu harus mengembalikan string yang berisi ID Proses (PID).
Salin PID ini dan
Jika Anda perlu melihat semua port yang terbuka, Anda dapat melakukan Port Scan di aplikasi Network Utility.
sumber
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.sumber