歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux問題解決

用來查看linux內存使用情況的shell腳本

在 linux 中,/proc/$PID/status 文件提供了該進程資源(內存,堆棧,信號量,子父進程)的使用情況,雖然linux提供了不少查看內存的命令,但都是看整體的使用情況,無法對單個進程的內存使用情況進行查看。

本文為大家提供的這個腳本,通過查看status文件中VmRSS的字段來查看系統或進程使用的內存情況,有需要的朋友不妨參考下。


復制代碼:
#! /bin/bash

echo -n "PidName " > /root/script/pid.f
echo "MeMery " >> /root/script/pid.f

PIDPATH=/proc/
TOTLE=0
cd $PIDPATH
DOC=`ls`
for DOCNAME in $DOC
do
if [ -d $DOCNAME ]; then
cd $DOCNAME
if [ -f status ];then
MEMERY=`grep VmRSS status | awk -F':' '{print $2}' | awk '{print $1}'`
PIDNAME=`grep Name status | awk -F':' '{print $2}'`
if [ $MEMERY ]; then
echo -n $PIDNAME >> /root/script/pid.f
echo -n " " >> /root/script/pid.f
echo $MEMERY >> /root/script/pid.f
TOTLE=`expr $TOTLE + $MEMERY`
cd ..
else
cd ..
fi
else
cd ..
fi
fi
done
TOTLE=`expr $TOTLE / 1024`
echo "TOTLE USERD: $TOTLE MB" >> /root/script/pid.f
cat /root/script/pid.f

Copyright © Linux教程網 All Rights Reserved