我想从cron运行一个python脚本,但它没有正常运行,所以我假设它的不同路径env变量。无论如何改变python脚本中的变量?如何修改python脚本中的系统路径变量?
回答
您不应该在python脚本中设置PATH。 相反,把类似
USER=joe
HOME=/home/joe
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/some/other/path
PYTHONPATH=/home/joe/pybin
MAILTO=joe
LANG=en_US.UTF-8
#min hr day mon dow
*/5 12 * * * reminder.py 'Eat lunch'
在您的crontab顶部。这些环境变量将可用于通过crontab运行的所有cron作业。
在下面的cron作业的顶部? – 2010-11-02 19:33:26
@Joe:是的;位于顶部,下方有cron作业线。 – unutbu 2010-11-02 19:33:51
@ubuntu有正确的方法,但对于它的价值,@Joe蠢货,如果你需要的信息:
import sys
print sys.path
['.', '/usr/local/bin', '/usr/local/lib/python2.6/dist-packages',...]
sys.path.append('/home/JoeBlow/python_scripts')
print sys.path
['.', '/usr/local/bin', '/usr/local/lib/python2.6/dist-packages', '/home/JoeBlow/python_scripts',...]
sys.path是在你的初始化脚本的PYTHONPATH数组包含一切变量(或者你的shell的默认PYTHONPATH)。
虽然接受的答案适用于OP的目的,而第二个答案是正确的更新python sys.path变量,我认为,如果OP不能使用接受的答案(因为,有一个针对修改/测试机器上的OS PATH变量的策略),像this SO answer这样的东西就是他们正在寻找的东西。这里总结了简单的情况下,改变OS PATH环境变量:
app_path = os.path.join(root_path, 'other', 'dir', 'to', 'app')
os.environ["PATH"] += os.pathsep + app_path
至少,这是我希望能找到我读的问题。
对于你想要设置PATH的情况(和PYTHONPATH是类似的代码),虽然请注意sys.path和os.environ ['PATH']是/可以是不同的。 – ntg 2017-11-20 11:22:01
- 1. 如何修改64位Windows 7上的系统变量路径?
- 2. 如何修改系统变量路径WIN7 64位emgu CV
- 3. 的Python:系统变量路径被改变,不sys.path中
- 4. 如何在python项目中初始化系统路径变量
- 5. 如何将python脚本添加到Windows系统路径?
- 6. 从操作系统路径中的Python脚本使用函数
- 7. C++ Boost文件系统:如何修改来自路径的干?
- 8. 如何通过系统路径变量从路径获取绝对路径?
- 9. NAnt:路径系统环境变量
- 10. 从Python脚本中更改CMD路径
- 11. 无法更改NetBeans的系统变量“路径”
- 12. 如何在Mac上更改我的Python系统路径?
- 13. 访问Python中的系统路径
- 14. 在shell脚本中更改父shell的路径变量
- 15. Python模块路径如何转换为文件系统路径?
- 16. 在Windows下自动添加Python路径到PATH系统变量
- 17. Photoshop的脚本 - 路径变量
- 18. JQuery的系统变量脚本
- 19. SSIS - 如何访问脚本任务中的系统变量
- 20. 如何在安装程序后刷新系统路径/变量?
- 21. 用于将windows路径更改为unix路径的Python脚本
- 22. 如何从Python脚本更改python文件中的变量值
- 23. 如何修改由系统
- 24. 如何在蚂蚁脚本中使用%teamcity.build.checkoutDir%路径变量(win7)
- 25. Powershell脚本打印出系统路径中的每个值
- 26. 如何在NAnt脚本中使用系统变量?
- 27. 如何使用os模块更改Python脚本的路径
- 28. 在Python中修改变量
- 29. 如何更改脚本中的变量?
- 30. chdir在Python中修改路径
您应该提供操作系统详细信息。此外,这看起来很像一个可能的重复 - 我建议更难搜索。 – 2010-11-02 19:26:08
“不正常运行”是什么意思?你确定你甚至开始你的脚本(即它可以找到你的python二进制文件) – 2010-11-02 19:32:49
我正在做很多Popen的程序,没有与他们的路径。 – 2010-11-02 19:34:06