जवाबों:
लिनक्स के तहत, आप कर सकते हैं:
htop -p `pstree -p $PID | perl -ne 'push @t, /\((\d+)\)/g; END { print join ",", @t }'`
$PID
जड़ प्रक्रिया कहां है। यह निम्नानुसार काम करता है:
pstree
के -p
विकल्प का उपयोग करके प्राप्त की जाती है ।\((\d+)\)
), और कॉमा के साथ अलग किए गए आउटपुट का उपयोग करता है।htop -p
।मैक ओएस जैसे अन्य ओएस के लिए, आपको पीआईडी को पुनः प्राप्त करने वाले नियमित अभिव्यक्ति को अनुकूलित करने की आवश्यकता हो सकती है।
नोट: यह दुर्भाग्य से नए बच्चों के साथ सूची को अद्यतन करने के लिए संभव नहीं है, जो बाद में स्पॉन हैं, क्योंकि एक बार htop
निष्पादित होने के बाद, कोई और कुछ भी नहीं कर सकता है। यह htop
(वर्तमान संस्करण: 2.0.2) की एक सीमा है ।
$PID
को pid होना चाहिए, लेकिन आप प्रक्रिया के नाम से आईडी प्राप्त कर सकते हैं pgrep
।
pstree
: homebrew सेhtop -p `pstree -p $PID | perl -ne 'push @t, /--- (\d+) /g; END { print join ",", @t }'`
htop -p $(ps -ef | awk -v proc=15305 '$3 == proc { cnt++;if (cnt == 1) { printf "%s",$2 } else { printf ",%s",$2 } }')
खरीद के रूप में मूल प्रक्रिया आईडी से गुजरने वाले ps -ef के उत्पादन से प्रक्रिया आईडी की अल्पविराम से अलग सूची बनाने के लिए awk का उपयोग करें और फिर इसे htop -p से बाहर पारित करें।
$PID
प्रक्रिया का नाम हो सकता है, या उसे आईडी होना चाहिए?