(немного отвлекаясь от вашего исходного вопроса), чтобы узнать, какой процесс прослушивает определенный номер порта, я обычно использую команду lsof
. Например:
lsof -i tcp:80
Чтобы показать только имя процесса и PID, проанализируйте вывод, используя:
lsof | tail -n +2 | awk '{print $1 " " $2}'
Команда tail
пропускает выходной заголовок, а awk
печатает необходимые столбцы.
Почему lsof
Попытка grep
вывода netstat
может быть грязной, так как вам нужно убедиться, что вы сопоставляете с правильным столбцом. Надежное решение может быть довольно длинным и сложным (для меня в любом случае) для производства по требованию.
lsof
избавляет вас от необходимости подбирать правильные порты, а также имеет множество других применений, например, обратное тому, что мы делаем сейчас (выясните, какие порты используются процессом), или определение того, какой процесс использует точку файла / монтирования (или обратную). См. lsof manpage для дополнительных примеров.