Ubuntu 定时运行命令脚本crontab

crontab的时间表达式

基本格式 :
*  *  *  *  *  command
分  时  日  月  周  命令

下面看几个例子:

1、每分钟执行一次            
*  *  *  *  * 

2、每隔一小时执行一次        
00  *  *  *  * 

3、每小时的15和30分各执行一次 
15,45 * * * * (,表示并列)

4、在每天上午 8- 11时中间每小时 15 ,45分各执行一次
15,45 8-11 * * * command (-表示范围)

5、每个星期一的上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 command

6、每隔两天的上午8点到11点的第3和第15分钟执行
3,15 8-11 */2 * * command

例子

现在我们需要在每天的凌晨启动cluster.py脚本,我们该怎么做。

  • Step1. 创建相应的.sh文件。
    这里面强烈建议用.sh作为服务脚本,如果直接执行cluster.py太容易出现路径引用错误问题了。
    新建一个cluster.sh文件(文件路径自己定),可以参考:
    #!/bin/sh
    cd cluster.py所在的路径
    python3 cluster.py
    echo "done"
    
  • Step2. 写cron脚本文件,命名为crontest.cron(名字任意取,后缀为.cron即可)。
    crontest.cron可以参考
    35 18 * * * sh cluster.sh的绝对路径/cluster.sh >> write_cluster.log的绝对路径/write_cluster.log 2>&1 &
    
    建议将定时任务的脚本写到日志里面,这样方便去发现问题。print日志的时候,不要含中文,不然最容易出现编码问题
  • Step3. 添加定时任务。执行命令 “crontab crontest.cron”。
  • Step4. 查看定时任务是否成功:“crontab -l” 。
  • Step5. 确定cron是否启动:ps aux | grep cron。
    启动正常应该会有
    root  108568  0.0  0.0  27716  1200 ?        Ss   17:27   0:00 /usr/sbin/cron
    

一些常见的命令

ubuntu下的一些命令

  1. apt-get install cron 安装cron服务
  2. sudo /etc/init.d/cron start 启动cron服务
  3. sudo /etc/init.d/cron stop 关闭cron服务
  4. ps aux | grep cron 查看cron服务是否启动
  5. crontab -l 列出某个用户cron服务的详细内容
  6. crontab -e 编辑定时任务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值