Chcę monitorować tylko proces i jego procesy potomne htop
. Filtrowanie według nazwy procesu nadrzędnego wyświetla tylko proces nadrzędny, a nie jego procesy potomne. Jak mogę również pokazać procesy potomne?
10
Pod Linuksem możesz:
htop -p `pstree -p $PID | perl -ne 'push @t, /\((\d+)\)/g; END { print join ",", @t }'`
gdzie $PID
jest proces rootowania. Działa to w następujący sposób:
pstree
pomocą -p
opcji, aby wyświetlić je wraz z ich PID.\((\d+)\)
) i wysyła je oddzielone przecinkami.htop -p
.W przypadku innych systemów operacyjnych, takich jak Mac OS, może być konieczne dostosowanie wyrażenia regularnego, które pobiera PID.
Uwaga: nie można niestety zaktualizować listy o nowe dzieci, które odradzają się później, ponieważ po htop
wykonaniu nie można nic więcej zrobić. Jest to ograniczenie htop
(aktualna wersja: 2.0.2).
$PID
może to być nazwa procesu lub musi to być identyfikator?$PID
musi być pid, ale identyfikator można uzyskać z nazwy procesu za pomocąpgrep
.pstree
homebrew:htop -p `pstree -p $PID | perl -ne 'push @t, /--- (\d+) /g; END { print join ",", @t }'`
Użyj awk, aby utworzyć oddzieloną przecinkami listę identyfikatorów procesów na podstawie wyniku ps -ef, przekazując nadrzędny identyfikator procesu jako proc, a następnie przekazując go do htop -p.
źródło