Возможное дублирование:
поиск процесса, использующего определенный порт в Linux
Я использую Ubuntu Linux 11.04. Как мне написать выражение сценария оболочки, которое найдет процесс, работающий на порту 4444, а затем уничтожит процесс?
Возможное дублирование:
поиск процесса, использующего определенный порт в Linux
Я использую Ubuntu Linux 11.04. Как мне написать выражение сценария оболочки, которое найдет процесс, работающий на порту 4444, а затем уничтожит процесс?
Ответы:
Вы можете использовать,
lsof
чтобы найти процесс:перечислил бы только pid процесса, прослушивающего порт 4444. Вы могли бы просто сказать
если бы ты был смелым
источник
Вы используете
lsof
:Результат будет примерно таким:
Где первый столбец - это имя процесса, а второй столбец - это идентификатор процесса. Затем вы анализируете выходные данные, узнаете, что такое идентификатор процесса (PID), и используете
kill
команду для его уничтожения.источник
В качестве альтернативы вы можете использовать
netstat -ap
if, еслиlsof
он недоступен в вашей системе (так как он недоступен в системе busybox, с которой я регулярно работаю).источник
Использует netstat для вывода списка прослушивающих сокетов INET с числовыми портами и родительскими процессами. Фильтрует строку 4444, вынимает 7-й столбец (pid / имя процесса) и дополнительно разбивает его на "/", чтобы получить pid. Проходит это, чтобы убить команду.
источник