我正在尝试从cron运行Django管理命令。我正在使用virtualenv使我的项目沙盒化。
我在这里和其他地方都看到了一些示例,这些示例显示了在virtualenv内部运行管理命令的过程,例如:
0 3 * * * source /home/user/project/env/bin/activate && /home/user/project/manage.py command arg
但是,即使syslog在任务应该启动时显示一个条目,该任务也不会实际运行(脚本的日志文件为空)。如果我从外壳程序手动运行该行,它将按预期工作。
当前,我可以通过cron运行命令的唯一方法是将命令分解并将其放入哑巴什包装器脚本中:
#!/bin/sh
source /home/user/project/env/bin/activate
cd /home/user/project/
./manage.py command arg
编辑:
ars提出了一种有效的命令组合:
0 3 * * * cd /home/user/project && /home/user/project/env/bin/python /home/user/project/manage.py command arg
至少就我而言,为virtualenv调用激活脚本没有任何作用。这是可行的,因此在演出中如此。
你应该可以python在虚拟环境中使用来执行此操作:
/home/my/virtual/bin/python /home/my/project/manage.py command arg
编辑:如果你的django项目不在PYTHONPATH中,那么你将需要切换到正确的目录:
cd /home/my/project && /home/my/virtual/bin/python ...
你也可以尝试从cron记录故障:
cd /home/my/project && /home/my/virtual/bin/python /home/my/project/manage.py > /tmp/cronlog.txt 2>&1
另一件事是尝试在manage.py
脚本的最顶部进行相同的更改:
#!/home/my/virtual/bin/python
如果要在指定的时间间隔(例如每天一次或每周一次)运行命令或php program ,可以在此界面中设置cron作业。 Cron jobs允许您自动运行特定的命令或程序。 如果您使用的是CRM或计费软件等软件,则通常需要这样做。 更频繁地设置cron作业可能会降低服务器的性能。 设置Cron Job 要添加新的cron作业,请按照下列步骤操作 - Step 1 - 通过单击cPanel中“高级”部分
问题内容: 我正在尝试在旧版Java / Spring / Hibernate项目中执行cron作业,因此我决定使用spring调度程序。 我希望myTask.doStuff在每个月的第一个星期日的12:00运行。 在我的application-context.xml中,我已将任务计划程序配置为: 问题cron表达式本身是:0 0 12?1/1 SUN#1 * 并且是一个bean,它有一个名为方法
Quartz Cron生成工具(表达式生成器) 开源 该软件需要在 .Net 4.0 环镜下才能运行
问题内容: 我正在尝试在旧版Java / Spring / Hibernate项目中执行cron作业,因此我决定使用spring调度程序。 我希望myTask.doStuff在每个月的第一个星期日的12:00运行。 在我的application-context.xml中,我已将任务调度程序配置为: 问题cron表达式本身是: 0 0 12? 1/1 SUN#1 * 并且是一个bean,它有一个名为
我正在运行一个spring boot计划的进程,需要5-10秒才能完成。完成后,60秒后流程再次开始(注意,我使用的不是fixedRate): 现在,我想限制它每分钟运行周一至周五上午9点到下午5点。我可以用 这里的问题是,这与fixedRate类似--进程每60秒触发一次,而不考虑完成上一次运行所花费的时间。 有没有办法把这两种技术结合起来?
我如何在AWS上每周日和周三凌晨2点UTC运行cron作业。 时间很好,只是天数似乎是错误的格式(通过无服务器获取)。但是我能找到的所有资源都只做状态范围的天数,如何选择单个资源?