我想让cron作业使用一个已经存在的名为my_env的anaconda
python环境执行python脚本。我唯一想做的是让cron作业运行一个名为的脚本my_script.bash
,该脚本又会激活env,然后运行python脚本。
#!/bin/bash
source activate my_env
python ~/my_project/main.py
尝试从命令行执行此脚本不起作用:
$ sh scripts/my_script.bash
scripts/my_script.bash: 9: scripts/my_script.bash: source: not found
我需要做什么以确保激活正确的环境。可以像我5岁时向我解释一下。
不要打电话,sh
但是bash
。source
是bash命令。
- sh scripts/my_script.bash
+ bash scripts/my_script.bash
要不就
chmod +x scripts/my_script.bash
./scripts/my_script.bash
因为您添加了bash shebang。
我有一个python脚本,在下一行中通过selenium调用chrome。 python脚本是从shell脚本调用的。 当我从终端运行脚本或只是执行时。sh文件它工作得很好,但当我计划crontab作业时,它会失败,并出现下一个错误。 错误与此问题的第一行代码有关。有人知道为什么会这样吗?
问题内容: 我有一个Python脚本,通过下一行通过selenium调用chrome。 python脚本是从shell脚本调用的。 当我从终端运行脚本或仅执行.sh文件时,它可以正常运行,但是当我计划crontab作业时,它将失败并显示下一个错误。 该错误与该问题的第一行代码有关。有人知道为什么会这样吗? 问题答案: 尝试从中启动浏览器最明显的问题是,即使您的计算机上运行了X,也未为从您的运行中的
问题内容: 我试图弄清楚如何在每周的星期日运行crontab作业。我认为以下方法应该有效,但是我不确定我是否正确理解。以下正确吗? 问题答案: 这是crontab格式的说明。 因此,据此,您将在每个星期日8:05运行。
问题内容: 上面的代码是我的bash文件。这里有两个命令 创建txt文件 执行Docker容器 如果我运行此命令 在终端然后它正在工作 但是当我在crontab中运行时 那么只有txt文件创建有效,而docker容器无效。 问题答案: 使用伪tty并以交互方式运行的请求,但是cron不会附加到任何TTY。尝试删除在
问题内容: 我在 /etc/cron.daily* 目录中有一个bash脚本 foo.sh ,chmoded 700,由root拥有,root用户的crontab列表在核心Debian安装中是不变的(crontab -l)。我确实以不同于crontab -l和/或crontab -e的方式运行cronjob(例如,我没有按照Debian的具体情况使用/etc/init.d/cron重新启动cron
问题内容: 我正在尝试按计划运行php- script。所以我认为crontab是个好主意。我正在使用的服务器在我不太熟悉的Linux上。所以我遇到的问题是,我不知道如何从php使脚本可执行。我需要引用该脚本,或将其放入可以从命令行运行php的文件夹中。所以我不知道给我的crontab提供什么路径,例如: 我发现有关此php可执行文件的一些模糊信息 但是我在那里找不到任何php文件,也许我没有安装