Варианты не 1-в-1, но можно сформировать список и форматировать уже как надо, главное понять принцип.
Через lsof (ставится отдельно)
lsof -i TCP|fgrep LISTEN
получение списка без lsof
pfexec pfiles `ls /proc` 2>/dev/null | egrep '^[0-9]|port:' | grep -v "AF_INET6" | sed -e 's/sockname: AF_INET//' -e 's/ *port: /:/'
вариант 2, фильтрованный
pfiles /proc/* 2>&- |
nawk 'END {
if (f) print p
}
/^[0-9]/ {
if (f) print p, RS
p = $0
f = 0
}
/INET / {
sub(/.*INET/,"")
p = p ? p RS $0 : $0
f = 1
}'
Вариант для 1 порта через lsof
lsof -i:port
без lsof надо открывать proc(ls /proc) и парсить, пример есть тут
линки
https://blogs.oracle.com/taz/entry/get_application_pid_listening_on
http://onlineappsdba.com/index.php/2008/06/10/how-to-find-pid-listening-particular-port-on-linuxsolaris-10/
http://stackoverflow.com/questions/91169/what-process-is-listening-on-a-certain-port-on-solaris
http://www.unix.com/solaris/87330-list-tcp-ports-process.html
http://chihungchan.blogspot.ru/2007/03/which-process-listens-to-this-port-in.html
Комментариев нет:
Отправить комментарий