脚本代码如下:
#!/bin/bash #当监控的日志文件大小大于指定的大小的时候,自动清空对应的文件内容 #nginx 访问日志限制 90MB accessMaxSize=94371840 #nginx 错误日志限制 60MB errorMaxSize=62914560 #php 错误日志限制 20MB phpErrorMaxSize=20971520 #diary 项目的日志文件限制 60MB diaryLogMaxSize=62914560 #www.phpernote.com 项目的日志文件限制 60MB phpernoteLogMaxSize=62914560 size=`ls -l /home/www/nginx_access.log | awk '{print $5}'` if [ $size -gt $accessMaxSize ]; then echo ''>/home/www/nginx_access.log fi size=`ls -l /home/www/nginx_error.log | awk '{print $5}'` if [ $size -gt $errorMaxSize ]; then echo ''>/home/www/nginx_error.log fi size=`ls -l /home/www/php_errors.log | awk '{print $5}'` if [ $size -gt $phpErrorMaxSize ]; then echo ''>/home/www/php_errors.log fi dir='/home/www/diary/logs' for i in ${dir}/*; do if [ -f $i ]; then size=`ls -l ${i}|awk '{print $5}'` if [ $size -gt $diaryLogMaxSize ]; then echo ''>$i fi fi done dir='/home/www/www.phpernote.com.log' for i in ${dir}/*; do if [ -f $i ]; then size=`ls -l ${i}|awk '{print $5}'` if [ $size -gt $phpernoteLogMaxSize ]; then echo ''>$i fi fi done