Skip to content

Instantly share code, notes, and snippets.

@takehaya
Created January 31, 2019 09:39
Show Gist options
  • Save takehaya/bab0f8efb4c1acfed86814aa773c75b3 to your computer and use it in GitHub Desktop.
Save takehaya/bab0f8efb4c1acfed86814aa773c75b3 to your computer and use it in GitHub Desktop.
Max RSSを取得できる(./mem.sh <option> <知りたいprocess>)
#!/bin/sh
# mem.sh
# GNU GPL version 2 copyright@N_Nao
# オプションの取得
while getopts :M opt
do
case $opt in
"M") size_f="TRUE";; # MB表示を行う
*) error_f="TRUE";;
esac
done
# 未知のオプションに関するエラー処理
if [ $error_f ]
then
echo "Unknown option:"
echo " if you don't know how to use,"
echo " please use -h option to show the help."
exit
fi
# コマンドを取得
COMMAND=""
while [ $1 ]
do
case $1 in
-*) ;;
*) COMMAND=$1
shift
while [ $1 ]
do
COMMAND=$COMMAND' '$1
shift
done
break;;
esac
shift
done
# 使用メモリ量をtimeコマンドで取得
MEM=`/usr/bin/time -f "\n%M" $COMMAND 2>&1 > /dev/null | tail -n 1`
# 結果の表示
if [ $size_f ]
then
MEM=`echo "scale=2; $MEM / 1024" | bc` # 1024で割りMBへ
echo \'$COMMAND\' \-\> Max RSS = $MEM MB.
else
echo \'$COMMAND\' \-\> Max RSS = $MEM KB.
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment