初衷:


游戏日志文件大于2GB时,游戏程序异常崩溃,为了游戏稳定,

只能在日志未达到2GB前,将其清空,但又担心以后可能用到游戏日志,

所以将其备份,备份数据保留期限为30天。



文件名:echo-game-log.sh


文件内容:

set -x

#提取系统当前时间:20140404

TIM=`date -d today +"%Y%m%d"`    

#游戏日志文件目录

S_DIR=/home/game/project/ServerLog/game_name/log/*.log

#日志备份目录:/data/game/game_log/20140404

D_DIR=/data/game/game_log/$TIM  

#删除日志目录指定

DEL_DIR=/data/game/game_log/    


#在指定的目录下查找大于1GB的游戏日志文件

for i in `find $S_DIR -type f -size +1G`;

#创建日志备份目录,备份日志文件,清空日志文件

do mkdir -p $D_DIR && cp -ar $i$D_DIR && echo  $i &&echo > $i;

done


#进入删除日志文件的目录

cd ${DEL_DIR}

#提取删除日志文件的日志

DELDATE=`date -d "30 days ago"    +%Y%m%d`

#删除30天以前的日志备份

rm -rf  *${DELDATE}*




Linux下修改文件的时间属性

用法:
1. 同时修改文件的修改时间和访问时间
touch -d "2014-04-04 13:00:00" test.txt

2. 只修改文件的修改时间
touch -m -d "2014-04-04 13:00:00" test.txt

3. 只修改文件的访问时间
touch -a -d "2014-04-04 13:00:00" test.txt