GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Conda-Befehl funktioniert in der Eingabeaufforderung, aber nicht im Bash-Skript

Wenn die Methode von @randomwalker für Sie nicht funktioniert, was nicht der Fall ist, wenn Ihr Skript in einer einfacheren Shell wie sh ausgeführt wird, haben Sie zwei Möglichkeiten.

  1. Fügen Sie dies Ihrem Skript hinzu:eval $(conda shell.bash hook)

  2. Rufen Sie Ihr Skript auf mit:bash -i <scriptname> damit es in Ihrer interaktiven Umgebung läuft.


Ich habe das Problem dank des Kommentars von @darthbith gelöst.

Seit conda eine Bash-Funktion ist und Bash-Funktionen nicht an unabhängige Shells weitergegeben werden können (z. B. durch Ausführen eines Bash-Skripts geöffnet werden), muss die Zeile

hinzugefügt werden
source /opt/anaconda/etc/profile.d/conda.sh

an das Bash-Skript, bevor Conda-Befehle aufgerufen werden. Andernfalls weiß bash nichts von conda.


Linux
  1. Befehl nicht in Bash gefunden behoben

  2. Bash Echo Die Befehlszeile wird in der Befehlszeile selbst ausgeführt (nicht in einem Skript)?

  3. Rm-Befehl im Bash-Skript funktioniert nicht mit Variablen?

  4. Befehl nicht in Zsh, aber in Bash gefunden?

  5. Mannbefehl funktioniert nicht?

Linux-Sleep-Befehl (Pausieren eines Bash-Skripts)

bash:netstat:Befehl nicht gefunden.

Das Bash-Skript gibt „Command Not Found“ in leeren Zeilen aus

bash sh - Befehl nicht gefunden

Der Linux-Befehl „ll“ funktioniert nicht

Wie zeige ich den aktuellen Pfad in der Eingabeaufforderung in Linux sh (nicht bash) an?