यहाँ MacOS के लिए अब तक एकमात्र समाधान है:
top -pid `pgrep java | awk 'ORS=" -pid "' | sed 's/.\{6\}$//'`
हालांकि यह अवांछनीय रूप से रिपोर्ट करेगा invalid option or syntax: -pid
कि क्या कोई java
प्रक्रिया जीवित नहीं है।
व्याख्या
यहां पोस्ट किए गए अन्य समाधान प्रारूप का उपयोग करते हैं top -p id1,id2,id3
, लेकिन MacOS ' top
केवल undieldy प्रारूप का समर्थन करता है top -pid id1 -pid id2 -pid id3
।
तो सबसे पहले, हम प्रोसेस आईडी की सूची प्राप्त करते हैं जिसका प्रोसेस नाम "जावा" है:
pgrep java
और हम इसे पाइप करते हैं awk
जो परिसीमनक के साथ परिणामों में शामिल होता है" -pid "
| awk 'ORS=" -pid "'
काश, यह एक अनुगामी परिसीमन छोड़ देता है! उदाहरण के लिए, हम अब तक स्ट्रिंग प्राप्त कर सकते हैं"123 -pid 456 -pid 789 -pid "
।
हम तो sed
सीमांकक के अंतिम 6 पात्रों को दाढ़ी बनाने के लिए उपयोग करते हैं ।
| sed 's/.\{6\}$//'`
हम परिणामों को पास करने के लिए तैयार हैं top
:
top -pid `...`