쉘 스크립트에서 프로세스의 메모리 사용량

쉘 스크립트에서 프로세스의 메모리 사용량

쉘 스크립트에서 프로세스의 메모리 사용량을 확인하고 싶습니다. 다음 코드를 사용해 보았습니다.

while[process] do
    if [ -e /proc/$pidno/statm ]; then
    m=`awk '{OFS="\t";print $1,$2,$3,$6}' /proc/$pidno/statm`
    perc=`top -bd .10 -p $pidno -n 1 | grep $pidno | gawk '{print \$10}'`
    echo -e "$m\t$perc"
    else
    echo "$pidno is not running"
    fi
done

하지만 루트로 명령을 실행하지 않기 때문에 /proc에 액세스할 수 없는 것 같습니다. 나는 뿌리가 될 권리가 없습니다. 도와주실 수 있나요? 메모리 사용량을 얻기 위해 이 작업을 수행하거나 다른 방법을 사용하려면 어떻게 해야 합니까?

프로세스의 PID가 있습니다.

답변1

ps 명령이 최선의 선택입니다. ps u$pidno가상 프로세스 크기와 상주 세트 크기를 알려줍니다.

관련 정보