Я ищу привязку к порту для SSH-туннелирования с помощью простого сценария оболочки (вероятно, BASH), и мне бы хотелось более ... "разумного" способа проверки того, привязан ли порт к другому процессу. , и я бы не хотел проверять (читай: grep) вывод netstat.
Есть ли какая-нибудь команда или утилита, которая делает это разумным? Либо у меня ужасный гугл-фу и ужасный словарный запас, либо большинство людей не пытаются перебирать порты программно через оболочку, а вместо этого через язык программирования.
вы можете использовать lsof:
-i я выбираю по IPv [46] адресу: [46] [proto] [@ host | addr] [: svc_list | port_list]
lsof -i 4TCP@0.0.0.0:80
Другой вариант - lsof. Вы можете сделать что-то вроде:
lsof -i tcp:<port> -s tcp:listen