• linux crontab执行python脚本问题


    在工作中我们经常会写一个python脚本,然后想通过定时任务去执行,这时我们会想到crontab.

    通过 crontab -e去设置crontab

    例如:0     0       *       *       *     python /data/webapps/cmdb.import.api/routine_analysis_halog.py

    这时如果你的脚本中会有涉及读取配置文件或者读写文件的动作,一般你的定时任务都不会执行.

    因为你的脚本在执行时,由于是通过crontab去执行的,他的执行目录会变成当前用户的家目录,如果是root,就会在/root/下执行.

    所以这样设置定时任务是不行的.

    我们也可以通过在/etc/cron.d下新建一个文件去指定定时任务执行目录的方式去设置定时任务.

    如:

    [root@zb_10-0-3-72_lin_opsipaddressmanager cron.d]# cat /etc/cron.d/sync_jira 
    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=root
    HOME=/data/webapps/ops.manage.ui
    0 5 * * * root python manage.py sync_jira_info 

    这样就可以指定crontab的执行目录了.

  • 相关阅读:
    elasticsearch之聚合函数
    elasticsearch之高亮查询
    elasticsearch之查询结果过滤
    elasticsearch之布尔查询
    elasticsearch之分页查询
    elasticsearch 之 排序查询
    elasticsearch 查询 term和match
    WSGI uwsgi wsgiref uWSGI werkzeug
    Django Contenttype组件
    迭代器
  • 原文地址:https://www.cnblogs.com/terrycy/p/6961339.html
Copyright © 2020-2023  润新知