美文网首页
linux操作集-定时删除日志文件

linux操作集-定时删除日志文件

作者: 爱编程的凯哥 | 来源:发表于2018-11-27 22:02 被阅读26次

需求描述:

 一台前置服务器,每天生产大量日志文件,需要配置定时任务,每天执行一次,检查并删除30天前的日志文件。

配置过程:

  • 1 选择自己的脚本目录
mkdir  /home/bin
cd /home/bin
  • 2 创建脚本文件
touch del_30.sh
  • 3 配置脚本,定义find函数,删除目录/apps/log/下所有类型文件
find /apps/log/* -type f -mtime +30 -exec rm -rf {} \;
#find查找文件
# /apps/log/*   对应目录下所有文件
#  -type f 所有类型的文件
# -mtime +30 修改时间超过30天的
#Access time 访问时间、
#Modify time 最后一次修改内容时间、
#Change time 最后一次改变文件时间,包括权限等等
# -exec 执行函数
#  rm -rf 删除命令
# {} \ 表示find匹配到的所有文件( {} \中间有控制 ,\;中间没有空格)
  • 4 设置可执行权限
chmod +x del_30.sh
  • 5 添加定时任务
crontab -e
样图
(1)前边是corn表达式,
(2)然后接你的sh文件,
(3)最后为执行结果输出地址,一般配置“ >/dev/null 2>&1 & ”表示不打印在任
何地方,相当于个黑洞。
  • 6 可用crontab -e查看以有哪些定时,如


    image.png
  • 7对于有些服务器未安装crontab命令,则需提前安装,联网安装:

 yum install vixie-cron
 yum install crontabs
rpm -q 包名:查询包是否安装
rpm -qa:查询所有已安装的RPM包

*   rpm -ivh 包全名
    *   -i(install):安装
    *   -v(verbose):显示详细信息
    *   -h(hash):显示进度
    *   --nodeps:不检测依赖性
  • 9 测试安装是否完成,验收结果,cron 是 linux 的内置服务,可以用以下的方法启动、关闭这个服务:
service crond start     //启动服务
service crond stop      //关闭服务
service crond restart   //重启服务
service crond reload    //重新载入配置
service crond status    //查看crontab服务状态

Linux操作集目录 https://www.jianshu.com/p/7839d27c62f8

相关文章

网友评论

      本文标题:linux操作集-定时删除日志文件

      本文链接:https://www.haomeiwen.com/subject/mdmnqqtx.html