Shell那些事儿之实战一

作者: 和奇谷朴 | 来源:发表于2016-07-28 22:17 被阅读151次

实战一:日志备份

问题背景

目前,企业中有大量的系统,包括核心业务系统和人才办的办公系统。其中有一个应用系统是BS结构,由java开发,部署在linux服务的weblogic中间件。每天24小时有大量的用户去访问,每时每刻都会输出日志,所以就需要一个脚本对该日志文件进行备份清理。

功能要求

建立定时作业,每天晚上11点,开始对当天的日志文件nohup.log进行备份清理:将nohup.log备份到nohuplog.20160726,然后清空nohup.log,最后删除$HOME/log目录下的nouse1.txt、nouse2.txt和nouse3.txt文件。

实现脚本

### 生产日志的备份清理脚本
1    nowdate=`date +%Y%m%d%H%M`
2   cp /home/shiyanlou/base_domain/nohup.log /home/shiyanlou/base_domain/nohup.log.$nowdate
3    cat /dev/null > /home/bea1/base_domain/nohup.out
4   rm $HOME/log/nouse*.*

脚本分析

源码分析

  • 该脚本功能包含4行代码
    1、定义一个时间变量
    2、拷贝一个新的日志文件
    3、清空原日志文件
    4、删除垃圾文件

基础知识点

  • 该实例涉及到3个基础知识,这些你都会了吗?
    1、字符串连接操作 : +
    2、输出重定向: > 、 >>
    3、常用命令:cp 拷贝文件、rm 删除文件

考点作业

  • 重定向符号 > 和 >>的区别是什么?
    请大家自行查找答案吧,如有兴趣,可以将标准答案回复给我哦,谢谢!

我是和奇谷朴,喜欢我文章的话,欢迎您给个赞!
另外也欢迎您的批评指正!谢谢!

相关文章

网友评论

  • 10641ffd6570:多来点嘛
  • 60b87cde4e67:后续呢
  • WB莫遥燚:简单点说>是覆盖,>>是追加。> 是定向输出到文件,如果文件不存在,就创建文件;如果文件存在,就将其清空;一般我们备份清理日志文件的时候,就是这种方法:先备份日志,再用`>`,将日志文件清空(文件大小变成0字节); >>是将输出内容追加到目标文件中。如果文件不存在,就创建文件;如果文件存在,则将新的内容追加到那个文件的末尾,该文件中的原有内容不受影响。

本文标题:Shell那些事儿之实战一

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