#clear log file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
#!/bin/bash # log use pattern name.yyyy.mm.dd # ponedate=`date +%Y.%m.%d --date="1 days ago"` logfile='/etc/myscript/listlog.txt' if [ ! -e ${logfile} ]; then exit 1 fi IFS=' ' for x in `cat ${logfile} | grep -v "^#"`; do logpath=`echo ${x} | awk '{print $1}'` days=`echo ${x} | awk '{print $2}'` logzip=${logpath}.${ponedate} if [ -e ${logzip} ]; then comm="/bin/gzip ${logzip}" eval $comm fi datedel=`date +%Y.%m.%d --date="${days} days ago"` logdel=${logpath}.${datedel} logdelgz=${logdel}.gz if [ -e ${logdel} ]; then rm -rf ${logdel} fi if [ -e ${logdelgz} ]; then rm -rf ${logdelgz} fi done cat listlog.txt /xxxxx/access_log 30 /xxxxx/error_log 30 |