改变PATH变量仍旧旧位置指出bash:糟糕的解释器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了改变PATH变量仍旧旧位置指出bash:糟糕的解释器相关的知识,希望对你有一定的参考价值。

最近我的anaconda / python安装从linux中的worspace01移到了workspace02分区。我已手动更改了所有环境变量,但仍显示与旧地址存在冲突。我错过了某个地方吗?

[nahiyank@venus]$ spyder
bash: /local/workspace02/nahiyank/anaconda/bin/spyder: /local/workspace01/nahiyank/anaconda/bin/python: bad interpreter

[nahiyank@cc08]$ $PATH
bash: /local/workspace02/nahiyank/anaconda/bin::/local/workspace02/nahiyank/anaconda/bin:/local/workspace02/nahiyank/anaconda/bin:/local/workspace02/nahiyank/anaconda/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/var/cfengine/bin:/home/u13/nahiyank/bin:.: No such file or directory


[nahiyank@cc08]$ cat .bashrc | grep anaconda
export PATH="/local/workspace02/nahiyank/anaconda/bin:$PATH"

但是,我的python运行完美,使用相同的anaconda框架

[nahiyank@cc08]$ python
Python 3.6.0 |Anaconda 4.3.0 (64-bit)| (default, Dec 23 2016, 12:22:00) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

我也尝试直接从GUI运行spyder可执行文件

答案

我不熟悉anaconda,但是从错误消息来看,它看起来像spyder是一个带有shebang行的python脚本,它指定了python解释器的旧路径。像这样的东西:

#!/local/workspace01/nahiyank/anaconda/bin/python

...并且因为python解释器不再存在,所以无法找到并且您得到“错误的解释器”错误。可能还有其他旧编码的硬编码参考。您可以使用以下方式搜索对旧位置的引用:

grep -R '/workspace01/' /local/workspace02/nahiyank/anaconda

可能通过编辑受影响的文件来修复它们,但重新安装可能更简单(正如我所说,我不熟悉anaconda)。

它没有关系,但你的PATH也有一些问题。 / local / workspace02 / nahiyank / anaconda / bin列出了4次(!),还有一个空白条目(参见“::”部分?)。我们必须看到更多的shell init文件来找出原因。

另一答案

Anaconda不是便携式发行版,即您需要在新位置重新安装它才能再次使用。

另一答案
  • 这绝对是一个路径问题
  • 你检查了echo $PATH吗?
  • $ PATH的值应该具有anaconda路径的子串,即local/workspace02/nahiyank/anaconda
  • 如果未在$ PATH中设置新的anaconda路径,则转到.bashrc文件并通过PATH =“and_the_value_of_the_path_plus_anaconda_path”将PATH设置为
  • 这应该可以解决问题
  • 另一个更简单的解决方案是重新安装anaconda
  • 如果你重新安装,我建议不要移动文件夹,因为在anaconda文件是硬编码和移动你的静止点到旧位置

以上是关于改变PATH变量仍旧旧位置指出bash:糟糕的解释器的主要内容,如果未能解决你的问题,请参考以下文章

cygwin中修改path变量

在Linux里设置环境变量的方法(export PATH)

bash shell基础编程

重构糟糕的代码

需要恢复旧的 $PATH 设置

Mac环境变量的位置查看和添加PATH环境变量