美文网首页
Linux 计划任务

Linux 计划任务

作者: 西北望高楼 | 来源:发表于2017-05-25 12:08 被阅读20次

    Linux 计划任务

    crontab 执行Python脚本(以Postgresql为例,自动下架过期商品):

    1. Python脚本,自动下架商品:
      #!/usr/bin/env python
      # -*-coding: utf-8 -*-
      '''自动下架获取'''
      import psycopg2
    
      config = {
          'host': '127.0.0.1',
          'port': 5432,
          'user': 'xxx',
          'password': 'xxx',
          'database': 'xxx',
      }
      conn = psycopg2.connect(host=config['host'],
                                          port=config['port'],
                                          user=config['user'],
                                          password=config['password'],
                                          database=config['database'])
      cur = conn.cursor()
    
      # 自动下架商品
      sql = "update goods set state=-1 where (etime + '10 day')::date < now()::date;"
      cur.execute(sql)
      print(cur.rowcount)
    
      # 自动截止车辆需求
      sql2 = "update truck_demand set state=1 where (end_time)::date >= now()::date;"
      cur.execute(sql2)
      print(cur.rowcount)
    
      conn.commit()
      cur.close()
      conn.close()
    
      try:
          f = open('/var/www/logs/aa.txt', 'w+')
          # with open('/var/www/logs/aa.txt', 'w+') as f:
          f.write('ahahhahahahah')
          f.close()
      except:
          f.close()
    
    1. crontab计划任务:
     0 0 * * * /var/www/crontab_bash/auto_offline.py
    
    • 注1: 上面表示每天0点定时执行该脚本

    • 注2: 执行Python脚本的时候,如果脚本内添加#!/usr/bin/env python之后,
      表示该脚本是可执行文件,直接用上面的代码即可.否则需要改为下面代码(我用的是虚拟环境
      Python)

    0 0 * * * /usr/bin/env/python /var/www/crontab_bash/auto_offline.py
    
    • 注3: 基本格式
      *   *  *  *  *   command 
     分 时  日  月   周  命令 
    
    1. crontab其他命令:
    • 启动 加载 重启 停止
     有些命令用的是crond
     sudo service cron start  启动
     sudo service cron reload  加载
     sudo service cron stop  停止
     sudo service cron restart  重启
    
    • 查看运行状态:
    sudo service cron status
    
    • 插入命令:
    crontab -e
    

    相关文章

      网友评论

          本文标题:Linux 计划任务

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