zoukankan      html  css  js  c++  java
  • linux下利用shell脚本实现添加crontab任务

    本来直接用crontab -e 就可以打开vim,输入要执行的任务保存退出就可以添加任务直接启动运行了。但是今天组长说能不能写个shell不用打开vi就能添加到crontab的。

    最先想到的是怎么在shell脚本里面如何使用vi的命令,网上找了好多,要么格式太乱,要么没明白意思直接告诉vi的使用方法,所以只好舍弃了。

    下面说我的方法吧

    test.sh :里面写的是要执行的具体任务。

    call.sh是交个人直接双击就能实现添加crontab任务的:内容如下:

    #!/bin/sh

    echo "*/5 * * * * /home/../test.sh" >> /var/spool/cron/username

    就这么两行的内容

    一般执行crontab -e命令都是直接往/var/spool/cron下创建一个文件,这个文件的名称就是你的当前用户名,内容就是你添加的任务具体内容。

    但是call.sh执行的时候需要root权限。

    实际配置:

    定期删除log日志文件

    echo "start deploy crotab for logs delete"

    if [ ! -e /var/spool/cron/ ];then
    mkdir -p /var/spool/cron/
    fi

    if [ `grep -v '^s*#' /var/spool/cron/root |grep -c '/data/socket'` -eq 0 ];then
    echo "30 0 * * * /bin/find /data/socket -name *.log -mtime +60 -type f |xargs rm -rf {};" >> /var/spool/cron/root

    fi

     

  • 相关阅读:
    java生成验证码
    springmvc笔记(来自慕课网)
    angularJs编写多指令的情况
    四年前端开发的迷茫.
    angularJs的ui-router总结
    grunt构建前端自动化的开发环境
    socket传送文件
    socket--粘包
    socket--接受大数据
    动态导入模块
  • 原文地址:https://www.cnblogs.com/weifeng1463/p/8330290.html
Copyright © 2011-2022 走看看