创建cron定时压缩日志的脚本级find指令

这里写图片描述

//进入服务区
cd /etc
cd cron.daily/
vim compresslog
//脚本内容:
#!/bin/sh

echo "" > /home/tomcat/logs/catalina.out
bash -c 'pushd /home/tomcat/logs && find . -type f -mtime +0 | grep -v ".tar" | xargs -I {} tar -czvf {}.tar.gz {} --remove-files && popd'


每天压缩

echo "" > /home/tomcat/logs/catalina.out
bash -c 'pushd /home/tomcat/logs&&find . -type f|egrep -v "`date +%F`|.tar"|xargs -I {} tar -czf {}.tar.gz {} --remove-files&&popd'
//查看脚本执行是否正确
sudo bash compresslog

要想crontab 能执行cron.daily文件下的新增脚步,需要给脚本添加执行权限:

//777权限放置比较大,可以查询chmod如何限制权限   775就行
sudo chmod 775 compresslog

chmod博客:http://www.cnblogs.com/chengJAVA/p/4319420.html
当新增文件也变成绿色时,代表执行权限添加成功

//添加完可执行权限后才可./执行脚本
./compresslog

这里写图片描述

-type:查找某一类型文档
b:块设备文档
d:目录
c:字符设备文档
P:管道文档
l:符号链接文档
f:普通文档

比如:

//查找所以大于20M的文档
find . -type f -size +20M  -print0 | xargs -0 du -h

Linux中find的使用之—查找近期修改的文件:http://blog.csdn.net/live_wyq/article/details/52788061

grep -v xx 是指显示不包含xxx的行或文件,-v表示取反的意思
grep用来匹配正则的时候,如下命令:

grep -v “.tar”
其中:-v表示的意思是说去反,或者说不包括,“.tar”里面的字符

xargs命令 来自: http://man.linuxde.net/xargshttp://man.linuxde.net/xargs

#压缩
tar -czvf ***.tar.gz
tar -cjvf ***.tar.bz2
博客:http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html

tar -czvf catalina.2017-10-31.log.tar.gz catalina.2017-10-31.log

#解压缩
tar -xzvf ***.tar.gz
tar -xjvf ***.tar.bz2

tar压缩:http://www.cnblogs.com/52linux/archive/2012/03/04/2379738.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值