Как определить внешний порт из PID

У меня есть несколько приложений, которые запускаются на случайных портах. Как я могу взять pid или местоположение файла и найти, на каком порту он работает?

Пример желаемого результата:

www-data/apache = 80 my-awesome-game = 2023 

2 Solutions collect form web for “Как определить внешний порт из PID”

я хотел бы использовать

 # netstat -anp 

Параметр -p показывает связанный PID и имя программы, к которой принадлежит соответствующий сокет. Вам просто нужно выполнить grep вывод, чтобы фильтровать только нужные вам строки (по PID или имени программы).

Аналогично netstat, lsof также мог бы сделать трюк:

 lsof -i 

Вам нужно будет обработать результат поиска PID, который вы хотите.

Преимущество, которое я вижу в использовании lsof, заключается в том, что «-p» в netstat не работает для всех Unix-аксессуаров, мне удается управлять AIX, Solaris и HP-UX (помимо Red Hat) и использовать lsof, потому что все параметры одинаковы, хотя некоторые функции не работают должным образом (т. е. наличие проприетарных и нестандартных файловых систем может вызвать проблемы с поиском имен файлов или другой информации).

  • Как загрузить видео из протокола rtmp из-за прокси-сервера, используя rtmpdump
  • Добавить вариант управления перегрузкой TCP в Linux Ubuntu
  • Где пропало / dev / tcp?
  • Почему TCP-соединения IPv4 отображаются как tcp6?
  • Убейте любую службу, запущенную на определенном порту
  • SSH-подобный сеанс, который выживает при отключении физической сети
  • NFS отменяет постоянное время TCP?
  • Пакеты HTTP 302 для Iptables содержат подозрительную строку домена
  • Неожиданный вывод нетстата в условиях DNAT
  • Исключить интерфейс обратной связи или адрес из процессов, прослушивающих «любой» адрес
  • Есть ли способ настроить TCP на потерю пакетов и повторную передачу?
  • Переадресация портов и маскировка
  • Linux и Unix - лучшая ОС в мире.