在测试中,我们会保证log文件大小,所以写了一个小脚本不断获取log大小。如下:
#!/bin/bash
echo "file size demo!"
mLogFilePath="/home/demo.log"
mFileMaxSize=$((1024*1))
echo "mLogFilePath: " ${mLogFilePath} "mFileMaxSize: "${mFileMaxSize}
while true
do
if [ -e "$mLogFilePath" ];then
echo "file exist!"
mLogFileSize=`ls -l $mLogFilePath | awk '{ print $5 }'`
echo "log file size:" ${mLogFileSize} " mFileMaxSize:" ${mFileMaxSize}
if [ $[mLogFileSize] -ge $[mFileMaxSize] ] ;then
echo "$mLogFileSize > $mFileMaxSize"
mv $mLogFilePath "${mLogFilePath}_`date +%Y-%m-%d_%H:%M:%S`".log
else
echo "$mLogFileSize < $mFileMaxSize"
fi
else
echo "file not exist!"
fi
sleep 1
done
执行结果:
//测试文件内容:
asfbsdkjbfaksdbfakbdskbfabsdbfabdsf
asfbsdkjbfaksdbfakbdskbfabsdbfabdsf
asfbsdkjbfaksdbfakbdskbfabsdbfabdsf
asfbsdkjbfaksdbfakbdskbfabsdbfabdsf
asfbsdkjbfaksdbfakbdskbfabsdbfabdsf
//结果:
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024
file exist!
log file size: 180 mFileMaxSize: 1024
180 < 1024