每小时执行一个脚本,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

 

posted @ 2021-02-20 13:43  星火撩原  阅读(89)  评论(0编辑  收藏  举报