我有一个帐户到一个使用科学Linux的计算集群。当然我只有用户权限。我正在使用python,需要运行python脚本,因此需要导入一些python模块。由于我没有root访问权限,我在$HOME上安装了一个本地python副本,其中包含所有必需的模块。当我在我的帐户(宿主节点)上运行脚本时,它们运行正常。但是为了将作业提交到计算队列(在速度更快的机器上处理),我需要提交一个bash脚本,该脚本有一行执行脚本。计算集群使用SunGrid引擎。但是,当我提交bash脚本时,出现了一个错误:找不到我安装的模块!你知道吗
所以我对这个问题的理解是模块没有被发送到执行脚本的机器上。我的问题是:是否可以在脚本中包含所有模块?你知道吗
编辑:我刚刚创建了一个运行which python
的bash脚本,我注意到输出不是我的python副本。但是当我在ssh帐户上运行'which python'时,我得到了正确的python副本。。你知道吗
提交的脚本很可能使用系统Python安装,而不是您自己的。尝试只使用一个命令
which python
提交shell脚本以进行确认。你知道吗修复方法是将Python解释器的路径预先添加到系统路径。在我的机器上,正确的Python安装在
/Users/mbatchkarov/anaconda/bin/python
。我把export PATH="/Users/mbatchkarov/anaconda/bin:$PATH"
加到~/.bash_profile
编辑将同一行添加到
~/.bashrc
。你知道吗相关问题 更多 >
编程相关推荐