1. 程式人生 > >linux監控程序實體記憶體

linux監控程序實體記憶體

方法比較多,提供一種最簡單的:

#!/bin/bash

PROCESS="./a.out" #程序名
MAXMEM=1048576    #最大實體記憶體閥值,單位KB

ID=`ps -ef | grep "${PROCESS}" | grep -v "grep" | awk '{print $2}'`
if [ ! -n "$ID" ]; then
    echo "$PROCESS not exist"
    exit 1
fi

MEM=`cat /proc/$ID/status | grep -e VmRSS | awk '{print $2}'`
if [ $MEM -gt $MAXMEM ]; then
    #超過了,kill或者restart程序
fi