#1 Le 30/05/2024, à 15:24
- kathalae
PB: Script execute commande pip dans env virtuel python sourcé
Bonjour à tous,
Je vous expose mon problème.
<toto :~$ source env/bin/activate
(env) toto :~$ pip install cryptography==37.0.2
Requirement already satisfied: cryptography==37.0.2 in ./env/lib/python3.8/site-packages (37.0.2)
Requirement already satisfied: cffi>=1.12 in ./env/lib/python3.8/site-packages (from cryptography==37.0.2) (1.16.0)
Requirement already satisfied: pycparser in ./env/lib/python3.8/site-packages (from cffi>=1.12->cryptography==37.0.2) (2.22)
(env) toto:~$ deactivate
toto :~$
Je souhaite lancer cette chaine dans un script. script.sh
Mon problème est que ça marche bien ligne par ligne à la main mais dès que je le lance à partir du script, il me fait les pip sur l'environnement local et non virtuel ou ça ne marche pas suivant si je rajoute "python3 -m pip ......"
Mon hypothèse est qu'il lance bien le source mais ouvre un sous-shell, puis il exécute les autres commandes dans le shell premier. Du coup ça n'installe pas dans l'environnement virtuel python et le deactivate ne fonctionne pas.
Une solution et des explications seraient super car là, je suis complétement perdu dans la compréhension du mécanisme.
Dernière modification par kathalae (Le 31/05/2024, à 05:48)
Hors ligne
#2 Le 30/05/2024, à 15:35
- xubu1957
Re : PB: Script execute commande pip dans env virtuel python sourcé
Bonjour,
Pour ajouter toi-même les balises code à ton précédent message #1 :
Cliquer sur le lien « Modifier » en bas à droite du message
Sélectionner le texte
Cliquer sur le <> de l'éditeur de message
comme indiqué dans le : Retour utilisable de commande
toto :~$ source env/bin/activate
(env) toto :~$ pip install cryptography==37.0.2
Requirement already satisfied: cryptography==37.0.2 in ./env/lib/python3.8/site-packages (37.0.2)
Requirement already satisfied: cffi>=1.12 in ./env/lib/python3.8/site-packages (from cryptography==37.0.2) (1.16.0)
Requirement already satisfied: pycparser in ./env/lib/python3.8/site-packages (from cffi>=1.12->cryptography==37.0.2) (2.22)
(env) toto:~$ deactivate
toto :~$
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#3 Le 30/05/2024, à 15:45
- Watael
Re : PB: Script execute commande pip dans env virtuel python sourcé
salut,
on manque de contextualisation. Que contient le script activate ?
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne