zoukankan      html  css  js  c++  java
  • 定时清除linux文件内容

    1、新建一个清除文件内容的shell脚本/usr/local/bin/clear,内容如下:

    #!/bin/bash
    #变量赋值等于号两边不能有空格
    FILE_PATH=/app/xxx/catania.out
    
    #if判断条件前后一定要有空格,且要有;then
    if [ -f $FILE_PATH ];then
        #表达式一定要用``括起来,原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awkexprexpr 最常用。
        #expr 是一款表达式计算工具,使用它能完成表达式的求值操作
        #表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2
        FILE_SIZE=`stat -c %s $FILE_PATH`
        #除法(/)
        FILE_SIZE1=`expr $FILE_SIZE / 1024 / 1024 / 1024`
        echo $FILE_PATH文件大小为:[$FILE_SIZE]Byte,[$FILE_SIZE1]GB
        #乘法(*)
        THRESHOLD=`expr 1 * 1024 * 1024 * 1024`    
        if [ $FILE_SIZE -gt $THRESHOLD ];then
            echo 大于阈值:1GB,开始清空
            echo > $FILE_PATH
            #echo后的字符串可以带""也可以不用
            echo "清空成功"
        fi
    else
        echo $FILE_PATH文件不存在
    fi

    2、往用户的crontab中添加一个cron去执行上面这个shell

    执行crontab -e命令用vi添加如下内容,保存之后就可以初始一个定时任务到crontab中,可以使用crontab -l命令查看定时任务是否添加成功

    */5 * * * * /usr/local/bin/clear

    扩:

    1、crontab

    参数 :

    -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)

    -r : 删除目前的时程表

    -l : 列出目前的时程表

    2、crontabl -e

    用户所建立的Crontab文件存于/var/spool/cron中,其文件名与用户名一致。

    它的格式共分为六段,前五段为时间设定段(cron表达式),第六段为所要执行的命令段

    格式如下:f1 f2 f3 f4 f5 program

    3、cron表达式

    格式如下:f1 f2 f3 f4 f5

    其时间段的含义如下:

    段                    含义                  取值范围

    第一段          代表分钟               0—59    

    第二段          代表小时               0—23

    第三段          代表日期               1—31

    第四段          代表月份               1—12

    第五段          代表星期几             0—6(0代表星期日)

    当 f1 为 * 时表示每分钟要执行,f2 为 * 时表示每小时要执行,其余类推

    当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推

    当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推

    当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其余类推

    使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表

    例如:

    周一到周五每天下午 5:00 执行一次 /usr/bin/backup :

    0 17 * * 1-5 /usr/bin/backup

  • 相关阅读:
    在过滤器中验证接口中的Token
    导出EXCEL的 两个方法
    调用webservice接口,返回xml(String)转义
    时间类的操作
    jvm 内存解析以及jvm调优
    redis springMVC 配置与应用
    题目2 成绩排序
    题目1 排序
    题目1042:Coincidence
    题目1131:合唱队形
  • 原文地址:https://www.cnblogs.com/jetqiu/p/14873474.html
Copyright © 2011-2022 走看看