Приложение может привязать несколько сокетов к определенному порту, как мне получить командную строку этих сокетов?
lsof также предоставит вам информацию об открытых сокетах:
$ lsof -i TCP:17500
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Dropbox 244 username 19u IPv4 0x05584748 0t0 TCP *:17500 (LISTEN)
Netstat может предоставить вам эту информацию:
petrus@srv:~$ sudo netstat -taunp
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale Adresse distante Etat PID/Program name
tcp 0 0 127.0.0.1:4949 0.0.0.0:* LISTEN 7837/munin-node
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 6399/sshd
udp 0 0 0.0.0.0:56317 0.0.0.0:* 9639/rpc.statd
udp 0 0 0.0.0.0:911 0.0.0.0:* 9639/rpc.statd
Вывод сокращен для ясности.
Если вы используете систему * bsd (я не знаю, существует ли она для linux и других * nix), есть эта команда socksat, которая делает то, что вы ищете.