1 votes

Inclure l'environnement virtuel dans l'invite bash

J'utilise bash sur Macbook Air sous MacOS Mojave et je voulais changer la couleur de l'invite du terminal.

J'ai été aidé sur cette question sur le SO y ce blog d'IBM après quoi j'ai utilisé

export PS1="\[\e[30;47m\]\W\[\e[30;47m\]$\[\e[0m\]"

qui a la couleur, l'habillage, le répertoire de travail et le nom de l'utilisateur. $ .

Ça a changé la couleur mais le message n'a pas été modifié. (base) o (ml) en elle. C'est l'environnement virtuel que j'ai créé en utilisant Conda. conda deactivate le supprime. A l'origine,

$ echo $PS1
(base) \h:\W \u\$           #original prompt with base.

$ conda deactivate          
$ echo $PS1
\h:\W \u\$                  #original prompt with no environment.  

$ conda activate ml
$ echo $PS1
(ml) \h:\W \u\$             #original prompt with ml environment. 

$ export PS1="\[\e[30;47m\]\W\[\e[30;47m\]$\[\e[0m\]"
$ echo $PS1
\[\e[30;47m\]\W\[\e[30;47m\]$\[\e[0m\]    #new prompt with no environment 
                                          #while ml is active   

Que puis-je inclure pour que le (base) o (ml) là, pour que ce soit comme

$ echo $PS1
(base) \[\e[30;47m\]\W\[\e[30;47m\]$\[\e[0m\]    #expected result.

Je n'ai pas trouvé de référence sur manuel bash pour l'environnement virtuel dans la section Contrôle de l'invite.

Je dois trouver où se trouve l'environnement actif actuel. Soit dans n'importe quel fichier ou n'importe quelle commande qui invoque le nom de l'environnement, qui peut être écrit dans ~/.bash_profile et ensuite ajouter cette variable à PS1.

0voto

nohillside Points 82672

Vous pouvez activer un environnement virtuel pour conda en courant

conda activate base

Remplacer base avec l'environnement conda (défini) que vous souhaitez utiliser.

pse@Mithos:~$ export PS1="\[\e[30;47m\]\W\[\e[30;47m\]$\[\e[0m\]"
~$cd .tmp
/Users/pse/.tmp
.tmp$conda activate base
((base) .tmp$conda deactivate 
.tmp$

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X