10

Команда fuser в Mac OS X довольно примитивна и не может проверять процессы, прослушивающие определенный порт. Кто-нибудь знает хорошую альтернативу? Достаточно знать, какой процесс прослушивает этот один порт.

1 ответ1

13

Как сказано в комментариях @vcsjones , lsof является инструментом для этого:

$ sudo lsof -i tcp:80
COMMAND PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAME
Safari  804 gordon   16u  IPv4 0x05a2cec8      0t0  TCP 192.168.6.3:50542->stackoverflow.com:http (ESTABLISHED)
httpd   874   root    3u  IPv6 0x05a2a940      0t0  TCP *:http (LISTEN)
httpd   878   _www    3u  IPv6 0x05a2a940      0t0  TCP *:http (LISTEN)

Без -i он показывает все открытые файлы; просто -i показывает только сетевые файлы; если вы указали что-то после -i вы можете ограничить его любым из следующих: IPv4/6, TCP/UDP, имя хоста или IP, а также номер порта /имя службы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .