【问题标题】:Can I create a script, "Virtual Environment" and run it in crontab?我可以创建一个脚本“虚拟环境”并在 crontab 中运行它吗?
【发布时间】:2021-03-04 00:00:37
【问题描述】:

他们帮助我,他们知道我需要运行脚本来启动服务,我使用 Django 和 Python 和 ubuntu 服务器。

我在 crontab 中看到了很多示例,我将使用它,每次我重新启动服务器时,我都会运行脚本,其中包含运行虚拟环境的命令以及命令“python3 manage.py runserver_plus” ",除了看到整晚重启服务器,我用crontab也成功了,但我无法执行脚本包含的内容。他们可以帮助我,我不是很专家,但我设法做了一些事情。 是脚本的路径吗?

尝试直接运行命令,没有结果。

I write the following.

root@server:/home/admin-server# pwd
/home/admin-server 

root@server:/home/admin-server# ls -l
drwxrwxr 3 admin-server   admin-server 4096 Nov 20 17:25 control_flota
-rwxr--r-- 1 root    root.  141 Nov 20 18:00  server_script.sh

新建脚本 我还是没有结果:/,不知道为什么?

#!bin/bash
echo "Welcome"
cd /home/admin-server/control_flota/
source venvp1/bin/activate
echo "Thanks"

【问题讨论】:

  • 新脚本在激活虚拟环境时停止;最后一条命令在哪里? python3 manage.py runserver_plus

标签: python django linux bash unix


【解决方案1】:

您可以在运行任何 ma​​nage.py 命令之前从 shell 脚本中激活 虚拟环境

#!/bin/bash
cd /your_code_directory
source env/bin/activate
python ./manage.py runserver_plus

确保使用 .sh 扩展名保存文件,然后授予它执行权限:

chmod u+x your_script.sh

你应该可以从 cron 调用; sudo cron 如果遇到权限问题

【讨论】:

  • 有趣,我会尝试显示结果,谢谢... :)
  • @JorgeToro - 不客气,伙计!如果这有帮助,请标记为已接受的答案
  • 我写如下。 root@server:/home/admin-server #pwd /home/admin-server root@server:/home/admin-server #ls -l drwxrwxr 3 admin-server admin-server 4096 Nov 20 17:25 control_fleet -rwxr - r-- 1 根根。 20 年 11 月 141 日 18:00 server_script.sh 脚本 #!/bin/bash echo "Welcome" cd /home/admin-server/control_flota/ source venvp1/bin/activate echo "Thanks"
  • @JorgeToro - 你的问题得到解答了吗?如果是这样,请将我的答案标记为已接受以结束循环
  • hace,我仍然没有解决方案,我运行命令行,我给它权限,它没有给我错误,但我无法激活活动字体脚本,不知道会是什么?
猜你喜欢
  • 2022-01-26
  • 1970-01-01
  • 2023-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-03
  • 1970-01-01
  • 2019-05-02
相关资源
最近更新 更多