每小时执行一个脚本,0点和12点时清空目录/data/log下的全部文件
题目要求
假如需要每小时都去执行一个脚本。在脚本中实现这样的功能,当时间是0点和12点时,需要将目录/data/log/下的文件全部清空,
注意只能清空文件内容而不能删除文件。而其他时间只需要统计一下每个文件的大小,一个文件一行,输出到一个按日期和时间为名字的日志里。
需要考虑/data/log/目录下的二级、三级、… 等子目录里面的文件。
参考答案
#!/bin/bash dir=/tmp/log_stat t=`date +%d%H` t1=`date +%H` logdir=/data/log [ -d $dir ] || mkdir $dir [ -f $dir/$t.log ] && rm -f $dir/$t.log if [ $t == "00" -o $t == "12" ] then for f in `find $logdir/ -type f` do > $f done else for f in `find $logdir/ -type f` do du -sh $f >> $dir/$t.log done fi