web-dev-qa-db-ja.com

condaコマンドはエラーをプロンプトします:「悪いインタープリター:そのようなファイルまたはディレクトリがありません」

私は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を削除して再インストールせずに、これを修正しようと思います。

24
Lukasz

インストール中に何かが間違っていたに違いないと思います。悪いインタープリターは、スクリプトが存在しないインタープリターを探していることを意味します-あなたが正当に指摘したように。

問題はシバンにある可能性が高い#! condaスクリプトのステートメント。

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コミュニティからのサポート に手を差し伸べることをお勧めします。

39
dangom

上記の応答として、この問題は、

#!/opt/anaconda1anaconda2anaconda3/bin/python

#!/opt/anaconda3/bin/python

ただし、次のインストールを行うとすぐに、例えば「conda install [...]」これは、何らかの理由で再びanaconda1anaconda2anaconda3に変更されます。

また、この問題に関連する可能性が非常に高いいくつかのインストール警告とエラーに気付くかもしれません。この問題を取り除くには、この警告とエラーを解決する必要があります。私の最も強い仮定は、最初にいくつかのcondaパッケージをインストールしようとしたときに、この問題を引き起こす管理者権限がないことです。

2
Rockbar