无标题
1 #!/bin/sh
2 #set -x
3 PROCNAME=$1
4 #PROCID=`ps -ef | grep $PROCNAME | grep -v grep | grep -v /bin/sh | awk '{print $2}'`
5 PROCID=`pidof $1`
6 LOG_FILE=${PROCNAME}_memory.log
7 TEMP=0
8 BT=0
9
10 if
11
12
13 echo > ./$LOG_FILE
14 while true; do
15 cd /proc/$PROCID
16
17 Rss=`cat smaps | grep Rss | awk 'BEGIN{x=0} {x+=$2} END{print x}'`
18
19 # SHARED_TOTAL=`expr $Shared_Clean + $Shared_Dirty`
20 # PRIVATE_TOTAL=`expr $Private_Clean + $Private_Dirty`
21 # TOTAL=`expr $SHARED_TOTAL + $PRIVATE_TOTAL`
22
23 if [ "${TEMP}" != "${Rss}" ]; then
24 CURRDATE=`date`
25 echo "pid: $PROCID, Name: $PROCNAME, Date: $CURRDATE Rss: $Rss KB"
26 TEMP="${Rss}"
27 fi
28 let BT++
29 echo "bt: $BT"
30
31 if [ $TEMP -gt $Rss ]; then
32 let BT++
33 echo "bt: $BT"
34 fi
35
36
37 sleep 1
38 done >> ./$LOG_FILE
39