web-dev-qa-db-fra.com

Commande virtuelle non trouvée

Je ne pouvais pas faire fonctionner virtualenv malgré diverses tentatives. J'ai installé virtualenv sur MAC OS X en utilisant:

pip install virtualenv

et ont également ajouté la PATH dans mon .bash_profile. Chaque fois que j'essaie d'exécuter la commande virtualenv, elle renvoie:

-bash: virtualenv: command not found

Chaque fois que je lance pip install virtualenv, il retourne:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

Je comprends que dans mac, la virtualenv devrait être correctement installée dans 

/usr/local/bin

La virtualenv est en effet installée dans /usr/local/bin, mais chaque fois que j'essaie d'exécuter la commande virtualenv, celle-ci est introuvable. J'ai également essayé d'exécuter la commande virtualenv dans le répertoire /usr/local/bin, et le résultat est identique: 

-bash: virtualenv: command not found

Ce sont les PATH que j'ai ajoutés à mon .bash_profile

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

Des solutions pour cela? pourquoi est-ce le cas? 

111
Arial

Si vous l'avez installé en cours d'exécution 

pip install virtualenv

Ce que vous devez faire est de courir:

Sudo /usr/bin/easy_install virtualenv

qui le met dans/usr/local/bin /. Le répertoire ci-dessus devrait par défaut être dans votre PATH; sinon, éditez votre .zshrc (ou .bashrc) en conséquence. 

222
Tal Avissar

J'ai fait face au même problème et voici comment je l'ai résolu:

  1. Le problème m’est arrivé car j’ai installé virtualenv via pip en tant qu’utilisateur régulier (et non pas root). pip a installé les paquets dans le répertoire ~/.local/lib/pythonX.X/site-packages
  2. Quand j'ai exécuté pip en tant que root ou avec des privilèges d'administrateur (Sudo), il a installé les packages dans /usr/lib/pythonX.X/dist-packages. Ce chemin peut être différent pour vous.
  3. la commande virtualenv n'est reconnue que dans le second scénario.
  4. Donc, pour résoudre le problème, faites pip uninstall virtualenv puis réinstallez-le avec Sudo pip install virtualenv (ou installez-le en tant que root)
93
vettipayyan

La réponse la plus simple. Juste:

pip uninstall virtualenv

et alors:

pip install virtualenv

Ou vous avez peut-être installé virtualenv avec Sudo, dans ce cas:

pip install --user virtualenv
20
Luis Martins

Sur Ubuntu 18.04 LTS, j’ai également été confronté à la même erreur . La commande suivante a fonctionné:

Sudo apt-get install python-virtualenv

Pour Mac OS, vous pouvez essayer avec Brew 

18
sam

J'ai eu le même problème sur Mac OS X El Capitan .

Lorsque j'ai installé virtualenv comme ce Sudo pip3 install virtualenv, je n'avais pas virtualenv sous ma ligne de commande.

J'ai résolu ce problème en suivant ces étapes:

  1. Désinstallez les installations précédentes.
  2. Basculez vers le compte superutilisateur avant l’installation de virtualenv en appelant Sudo su
  3. Installez virtualenv en appelant pip3 install virtualenv
  4. Enfin, vous devriez pouvoir accéder à virtualenv à partir des comptes user et super user.
17
Krystian Sakowski

Vous avez dit qu'à chaque fois que vous exécutez le pip install, vous obtenez Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages. Ce que vous devez faire est le suivant:

  1. Changer de répertoire (allez à celui où virtualenv.py) cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
  2. Si vous faites une ls, vous verrez que le script est là virtualenv.py
  3. Exécutez le script comme ceci: python virtualenv.py --distribute /the/path/at/which/you/want/the/new/venv/at theNameOfTheNewVirtualEnv

J'espère que cela t'aides. Mon conseil serait de faire des recherches plus approfondies. Voici une bonne ressource: https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/

7
Bouramas

J'ai eu des problèmes parce que j'ai utilisé apt pour installer le paquet python-virtualenv . Pour le faire fonctionner, j'ai dû supprimer ce paquet avec apt-get remove python-virtualenv et l'installer avec pip install virtualenv.

5
Boris Davidov

Je pense que votre problème peut être résolu en utilisant un simple lien symbolique , mais vous créez le lien symbolique vers le fichier mauvais. Autant que je sache, virtualenv est installé sur /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv (vous pouvez modifier les numéros de votre version Python) de sorte que la commande permettant de créer le lien symbolique doit être:

ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv
4
Bobby wankenoby

Résoudre le problème

Essayez d'installer avec l'indicateur --verbose

pip install virtualenv --verbose

La sortie ressemblera à quelque chose comme ça

  ..
  Using cached virtualenv-15.1.0-py2.py3-none-any.whl
  Downloading from URL https://pypi.python.org/packages/6f/86/3dc328ee7b1a6419ebfac7896d882fba83c48e3561d22ddddf38294d3e83/virtualenv-15.1.0-py2.py3-none-any.whl#md5=aa7e5b86cc8cdb99794c4b99e8d670f3 (from https://pypi.python.org/simple/virtualenv/)
Installing collected packages: virtualenv

  changing mode of /home/manos/.local/bin/virtualenv to 755
Successfully installed virtualenv-15.1.0
Cleaning up...

D'après le résultat, nous pouvons voir qu'il est installé à /home/manos/.local/bin/virtualenv, alors assurons-nous que PATH inclut cela.

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Dans mon cas, nous pouvons clairement voir que /home/manos/.local/bin est totalement manquant et c'est pourquoi Shell ne parvient pas à trouver le programme.

Solutions

Nous pouvons résoudre ce problème de plusieurs manières:

  1. Nous pouvons installer directement dans un répertoire spécifique en jouant avec les options de pip (non recommandé).
  2. Créez des liens symboliques appropriés à /usr/local/bin ou similaire.
  3. Ajoutez /home/manos/.local/bin à PATH.
  4. Installer en tant que Sudo pour installer directement dans /usr/local/bin

Les deux dernières options sont probablement les plus judicieuses. La dernière solution est la plus simple, je vais donc simplement montrer la solution 3.

Ajoutez ceci à ~/.profile:

PATH="$PATH:$HOME/.local/bin"

Déconnectez-vous et à nouveau et cela devrait fonctionner.

3
Pithikos

Sur ubuntu 18.4 sur AWS, l'installation avec pip ne fonctionne pas correctement. En utilisant apt-get install, le problème a été résolu pour moi.

Sudo apt-get install python-virtualenv

et pour vérifier 

virtualenv --version
1
DAme
apt update
apt upgrade
apt install ufw python virtualenv git unzip pv

3 commandes et tout fonctionne!

1
Art Raptors

Assurez-vous que virtualenv est exécutable.

Si virtualenv est introuvable, le chemin d'accès complet (/usr/local/bin/virtualenv) devrait fonctionner.

1
VertigoRay

Suivez ces étapes de base pour configurer l’environnement virtuel.

Sudo pip install virtualenv virtualenvwrapper
Sudo rm -rf ~/get-pip.py ~/.cache/pip

nous devons mettre à jour notre ~/.bashrc

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

Le fichier ~/.bashrc est simplement un script Shell que Bash exécute chaque fois que vous lancez un nouveau terminal. Vous utilisez normalement ce fichier pour définir diverses configurations. Dans ce cas, nous définissons une variable d'environnement appelée WORKON_HOME afin qu'elle pointe vers le répertoire dans lequel nos environnements virtuels Python résident. Nous chargeons ensuite toutes les configurations nécessaires à partir de virtualenvwrapper.

Pour mettre à jour votre fichier ~/.bashrc, utilisez simplement un éditeur de texte standard, nano est probablement le plus facile à utiliser. Une solution plus simple consiste à utiliser la commande cat et à éviter complètement les éditeurs:

echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc

Après avoir édité notre fichier ~/.bashrc, nous devons recharger les modifications:

source ~/.bashrc

Maintenant que virtualenv et virtualenvwrapper sont installés, l'étape suivante consiste à créer l'environnement virtuel Python. Pour ce faire, nous utilisons la commande mkvirtualenv.

mkvirtualenv YOURENV
0
user8224289

Si vous utilisez Linux, ouvrez votre terminal et tapez virtualenv halfway et complétez automatiquement à l'aide de la touche de tabulation. S'il n'y a pas de complétion automatique, installez virtualenv sur votre système en exécutant: 

mycomp$Sudo apt-get install virtualenv
//if you're already super user.
mycomp#apt-get install virtualenv

Vous pouvez maintenant naviguer où vous voulez créer votre projet et faire:

myprj$pip3 install virtualenv    
//to install python 3.5 and above  
myprj$virtualenv venv --python=python3.5  
//to activate virtualenv  
(venv)myprj$source venv/bin/activate  
(venv)myprj$deactivate
0
7guyo

python3 -m virtualenv virtualenv_name

python -m virtualenv virtualenv_name

0
Nikkey

Dans mon cas, j'ai exécuté pip show virtualenv pour obtenir les informations sur le paquet virtualenv. Je ressemblerai à ceci et montrerai également l'emplacement du paquet:

user@machine:~$ pip show virtualenv
Name: virtualenv
Version: 16.2.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: [email protected]
License: MIT
Location: /home/user/.local/lib/python3.6/site-packages
Requires: setuptools

À partir de là, saisissez la partie d’emplacement jusqu’à la partie .local, qui dans ce cas est /home/user/.local/. Vous pouvez trouver la commande virtualenv sous /home/user/.local/bin/virtualenv.

Vous pouvez ensuite exécuter des commandes telles que /home/user/.local/bin/virtualenv newvirtualenv.

0
Dejv