जवाबों:
लिनक्स के तहत, आप कर सकते हैं:
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प्रक्रिया का नाम हो सकता है, या उसे आईडी होना चाहिए?