shell计算上传一个文件到CEPH的时间

#!/bin/bash

if [ "`dpkg -l | grep " bc " | awk '{print $2}'`" != "bc" ];then
        apt-get install bc
fi

if [ -z $1 ];then
        filename="/etc/mime.types"
else
        filename=$1
fi
echo "filename is : " $filename
start_time=`date +%s%N`
echo "start time : "`date`
filesize=`stat $filename | grep Size | awk '{print $2}'`
poolsize=` ceph osd pool get images size | awk '{print $2}'`
rados put object11 $filename -p images
#end_time=`date +%s`
end_time=`date +%s%N`
echo "end time : "`date`
cost_time=$[$end_time-$start_time]
cost_time=$(echo "scale=2;$cost_time/1000000000" | bc)
echo "cost time :" $cost_time "s"
speed=$(echo "scale=2;$filesize*$poolsize/$cost_time/1024/1024" | bc)
echo "average time:" $speed "MB/S"


由于shell的精度问题,文件越小误差越大

猜你喜欢

转载自blog.csdn.net/u010317005/article/details/77529136