2013-01-18 14 views
5

Chcę znaleźć identyfikator procesu przy użyciu netstat i zobaczyć, jak długo ten proces był uruchomiony przy użyciu ps. Obecnie mam do wykonania dwa oddzielne polecenia. Jak zrobić to za pomocą jednego polecenia?Znajdź identyfikator procesu przy użyciu netstat w połączeniu z ps

netstat -anp | grep http | grep ESTABLISHED | awk {'print $7}' | awk -F '/' {'print $1'} 

oraz:

ps -eo pid,uid,ruser,etime | grep someuser 

Odpowiedz

13
for i in `netstat -anp | grep http | grep ESTABLISHED | awk {'print $7}' | awk -F '/' {'print $1'} | uniq` ; do ps -eo pid,uid,ruser,etime | grep $i ; done 
+0

Perfect! Dzięki! Powinienem o tym pomyśleć. – ibash

+4

Jeśli odpowiedź rozwiązała Twój problem, proszę bądź uprzejmy i zaakceptuj to. –

+2

zamiast 'uniq' Wolałbym' sort-u', aby uniknąć duplikatów na liście pid – knb

Powiązane problemy