一尘不染

conda命令将提示错误:“错误的解释器:没有这样的文件或目录”

linux

我正在使用arch linux,并且已经按照Anaconda网站上的说明安装了Anaconda。当我尝试运行时conda info --envs,出现以下错误:

bash:/ home / lukasz / anaconda3 / bin / conda:/ opt /
anaconda1anaconda2anaconda3 / bin / python:错误的解释器:无此类文件或目录

我尝试过查找目录,/opt/anaconda1anaconda2anaconda3/bin/python:但是它根本不存在。

此外,当我从终端运行python时,它会正常运行,并在顶部显示以下内容

Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul  2 2016, 17:53:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.

为了完整.bashrc起见,我的文件类似于:

#
# ~/.bashrc
#

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

alias ls='ls --color=auto'
PS1='[\u@\h \W]\$ '

# added by Anaconda3 4.0.0 installer
export PATH="/home/lukasz/anaconda3/bin:$PATH"

# python startup for up keys
export PYTHONSTARTUP=$HOME/.pythonstartup

我尝试遵循未找到Conda命令并进行适当的更改,但是什么也没有,我也尝试了未找到Conda命令,路径在.bashrc中,但实际上没有发布解决方案。

我想尝试解决此问题,而不必删除Anaconda并重新安装它。


阅读 855

收藏
2020-06-07

共1个答案

一尘不染

我想安装期间一定出了点问题。如您正确指出的那样,不良的解释器意味着脚本正在寻找不存在的解释器。

问题可能出在#!您的conda脚本的shebang 语句中。

来自Wikipedia
:在类似Unix的操作系统下,当带有shebang的脚本作为程序运行时,程序加载器将脚本的其余首行解析为解释器指令;而是运行指定的解释器程序,将尝试运行脚本时最初使用的路径作为参数传递给它。

如果你跑

cat ~/anaconda3/bin/conda

您可能会得到以下信息:

#!/opt/anaconda1anaconda2anaconda3/bin/python
if __name__ == '__main__':
    import sys
    import conda.cli

    sys.exit(conda.cli.main())

更改第一行以指向正确的解释器,即,将其更改为:

#!/home/lukasz/anaconda3/bin/python

应该使conda命令起作用。

如果您确定正确安装了所有组件,那么建议您从anaconda社区寻求支持。

2020-06-07