यह linux के लिए आपके प्रश्न का उत्तर देना चाहिए लेकिन IDK कैसे मैक पर करना है।
यदि मैं 'ps -ef' करता हूं तो मैं प्रत्येक प्रक्रिया के मेमोरी उपयोग को कैसे प्रदर्शित कर सकता हूं?
यहाँ वह स्क्रिप्ट है जो वे इसे पूरा करने के लिए उपयोग करते हैं:
#!/bin/bash
for pid in $(ps -ef | awk '{print $2}'); do
if [ -f /proc/$pid/smaps ]; then
echo "* Mem usage for PID $pid"
rss=$(awk 'BEGIN {i=0} /^Rss/ {i = i + $2} END {print i}' /proc/$pid/smaps)
pss=$(awk 'BEGIN {i=0} /^Pss/ {i = i + $2 + 0.5} END {print i}' /proc/$pid/smaps)
sc=$(awk 'BEGIN {i=0} /^Shared_Clean/ {i = i + $2} END {print i}' /proc/$pid/smaps)
sd=$(awk 'BEGIN {i=0} /^Shared_Dirty/ {i = i + $2} END {print i}' /proc/$pid/smaps)
pc=$(awk 'BEGIN {i=0} /^Private_Clean/ {i = i + $2} END {print i}' /proc/$pid/smaps)
pd=$(awk 'BEGIN {i=0} /^Private_Dirty/ {i = i + $2} END {print i}' /proc/$pid/smaps)
echo "-- Rss: $rss kB"
echo "-- Pss: $pss kB"
echo "Shared Clean $sc kB"
echo "Shared Dirty $sd kB"
echo "Private $(($pd + $pc)) kB"
fi
done
/proc
तो यह निश्चित रूप से कॉपी करने के लिए गलत जवाब है। दूसरे प्रश्न में अन्य समाधान हैं जो पोर्टेबल हैं, त्वरित नज़र से; और उनमें से कई के पास एक भी अच्छी तरह से परिभाषित एक के बजाय भारी संख्या में नन्हा नन्हा अक्क लिपियों को चलाने का यह विशाल एंटीपार्टर्न नहीं है।