指定条件日志备份的小脚本

问题提出
删除指定条件的日志,如果日志太多,按条件rm/mv都不能正确执行。使用脚本清理指定日志。
实现思路
通过for循环,遍历日志。当日志太多时有条件的ls不能查看所有的日志,会报“ksh: /usr/bin/ls: 0403-027 The parameter list is too long.” 错误故先ls全部,再根据条件过滤日志。
方便以后查找备份到盘阵上。
日志目录的命名方式为rtcc加当前日期,如果想当天多次备份,每次备份的目录名不同,脚本加一个参数。
实现脚本

#!/usr/bin/ksh
SRC_DIR=~/log/rtcc
DEST_DIR=~/cdrbak/log
LOG_DIR=rtcc`date +'%y%m%d'`$1
if [ ! -d $LOG_DIR ]
then
    echo "目录不存在,新建目录:";
    echo $LOG_DIR;
    mkdir $LOG_DIR;
fi
echo `date +'%Y-%m-%d %H:%M:%S'`;
for FILE_NAME in `ls $SRC_DIR/`
do
    if [ `ls $SRC_DIR/$FILE_NAME|grep "rtcc/."` ]
    then
        echo $FILE_NAME;
        #echo "mv $SRC_DIR/$FILE_NAME $DEST_DIR/$LOG_DIR;"
        mv $SRC_DIR/$FILE_NAME $DEST_DIR/$LOG_DIR;
        #sleep 10
    fi
done
echo `date +'%Y-%m-%d %H:%M:%S'`

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值