वर्चुअन कमांड नहीं मिला


207

मैं virtualenvविभिन्न प्रयासों के बावजूद काम नहीं कर सका । मैंने virtualenvमैक ओएस एक्स का उपयोग करके स्थापित किया है:

pip install virtualenv

और PATHमेरे में भी जोड़ा है .bash_profile। हर बार जब मैं virtualenvकमांड चलाने की कोशिश करता हूं , तो यह वापस आ जाता है:

-bash: virtualenv: command not found

जब भी मैं दौड़ता हूं pip install virtualenv, वह लौटता है:

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

मैं समझता हूं कि मैक में, virtualenvसही ढंग से स्थापित होना चाहिए

/usr/local/bin

virtualenvवास्तव में में स्थापित किया गया है /usr/local/bin, लेकिन जब भी मैं चलाने का प्रयास virtualenvआदेश, आदेश नहीं मिला है। मैंने virtualenvनिर्देशिका में कमांड चलाने की भी कोशिश की है /usr/local/bin, और यह मुझे एक ही परिणाम देता है:

-bash: virtualenv: command not found

ये वे PATH हैं जिन्हें मैंने अपने .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

इसके लिए कोई कामगार? यह एक केस क्यों है?


1
Virtualenv निष्पादन योग्य / usr / स्थानीय / बिन में एक सिमिलर जोड़ने की कोशिश करें
जस्टिन फे

मुझे सिमलिंक कहां बनाना चाहिए? यह तब भी काम नहीं कर रहा है, जब मैंने उस निर्देशिका में सिमिलर जोड़ने की कोशिश की, जहाँ मैं virtualenv @justinfay
एरियल

2
ऊपर के रास्तों को देखने से यह कुछ ऐसा हो सकता है, कमांड में अंतिम पथ को वास्तविक वर्चुअन के लिए पथ के साथ निष्पादित करें:$ ln -s /usr/bin/virtualenv /Library/Framework/Python.framework/Version/2.7/lib/site-packages/virtualenv/virtualenv.py
जस्टिन फे

2
मेरे लिए जो काम किया गया था वह सिम्लिंक जोड़ने के लिए थाln -s /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv
अलीजा

एक काम नहीं करता है lubuntu
c24b

जवाबों:


336

यदि आपने इसे स्थापित किया है

pip install virtualenv

आपको दौड़ने की जरूरत है

sudo /usr/bin/easy_install virtualenv

जो इसे अंदर डालता है /usr/local/bin/

डिफ़ॉल्ट रूप से उपरोक्त निर्देशिका आपके में होनी चाहिए PATH; अन्यथा, तदनुसार .zshrc(या bashrc) को संपादित करें ।


1
@nguns
Tal Avissar

AWS EC2 उदाहरण पर Amazon Linux, अगर आप लेट्स एनक्रिप्ट का प्रयास कर रहे हैं certbot, तो इस समाधान को आजमाएं। यह एकमात्र सुझाव था जिसने मेरी virtualenv समस्या को हल किया।
इमरगुंडुज़

2
आप सबसे अच्छे हो!
लेऑन वू

6
आउटपुट हैsudo: /usr/bin/easy_install: command not found
Ced

2
इसके लिए थैंक्यू - लेकिन मैं चाहता हूं कि मुझे पता था कि यहां जादू टोना क्या है - "easy_install" क्या करता है जो नियमित रूप से पाइप करता है? यानी यह काम क्यों करता है?
थॉमस किम्बर

153

मैंने एक ही मुद्दे का सामना किया और यह है कि मैंने इसे कैसे हल किया:

  1. यह समस्या मुझे हुई क्योंकि मैंने एक नियमित उपयोगकर्ता (रूट नहीं) के रूप में पाइप के माध्यम से वर्चुअनव को स्थापित किया। पाइप ने निर्देशिका में पैकेज स्थापित किए~/.local/lib/pythonX.X/site-packages
  2. जब मैंने पाइप को रूट के रूप में या व्यवस्थापक विशेषाधिकारों (sudo) के साथ चलाया, तो इसने संकुल को अंदर स्थापित किया /usr/lib/pythonX.X/dist-packages। यह रास्ता आपके लिए अलग हो सकता है।
  3. virtualenv कमांड केवल दूसरे परिदृश्य में पहचानी जाती है
  4. इसलिए, समस्या को हल करने के लिए, pip uninstall virtualenvइसे फिर से करें sudo pip install virtualenv(या रूट के रूप में स्थापित करें)

8
मैंने आपके समाधान का पालन किया और संदेश मिला "... यदि सूडो के साथ पाइप निष्पादित किया जाता है, तो आप सूडो -एच ध्वज चाहते हैं"। अंत में sudo -H pip इंस्टॉल virtualenv ने मेरे लिए (OS X पर) काम किया, धन्यवाद
smudo78

1
क्या होगा अगर आपकी मशीन पर रूट उपलब्ध नहीं है?
user5359531

समस्या का हल किया। मुझे लगता है कि यह वैश्विक डायर में जा सकता है --user

यह समस्या तब भी होती है जब पाइप ही ~ / .local / SOME_PATH में स्थापित होता है। मैं dir में cpसब कुछ संपादित करता हूं , और मूल निर्देशिका को संपादित करता हूं । site-packages/usr/lib/pythonx.x/site-packagesrm -rf
यूं

47

सबसे सरल उत्तर। बस:

pip uninstall virtualenv

और फिर:

pip install virtualenv

या शायद आपने sudoउस स्थिति में virtualenv स्थापित किया है :

pip install --user virtualenv

वाह! यह मेरे लिए क्या चाल है। मैं pyenvइस तरह से उपयोग कर रहा हूँ
दौड़

यह काढ़ा का उपयोग करके मैक ओएस एक्स के लिए जाने का तरीका है।
TCSGrad

हफ्तों तक इससे लड़ते रहे और यह मेरे सीमित समय को एक अजगर परियोजना पर काम करने के लिए बाधित कर रहा है और यह मेरे लिए मैक पर काम करने का एकमात्र समाधान था। धन्यवाद!
हेलादेव

37

उबंटू 18.04 एलटीएस पर मुझे भी उसी त्रुटि का सामना करना पड़ा। निम्नलिखित कमांड ने काम किया:

sudo apt-get install python-virtualenv

1
brew install python-virtualenvमौजूद नहीं है
लियोनार्ड

मेरे 18.04 पर आकर्षण की तरह काम किया, धन्यवाद
निश्चय शर्मा

के aptउत्तराधिकारी के रूप में प्रचार करने के लिए नीचे वोट दिया गया apt-get
ग्रेबियर्ड

24

मुझे मैक ओएस एक्स एल कैपिटन पर भी यही समस्या थी ।

जब मैंने virtualenvउस तरह स्थापित किया , जो sudo pip3 install virtualenvमेरे पास virtualenvकमांड लाइन के तहत नहीं था।

मैंने उन चरणों का पालन करके इस समस्या को हल किया:

  1. पिछली स्थापना रद्द करें।
  2. virtualenvकॉल करके इंस्टालेशन से पहले सुपर यूजर अकाउंट में स्विच करेंsudo su
  3. virtualenvकॉल करके इंस्टॉल करेंpip3 install virtualenv
  4. अंत में आपको अकाउंट और अकाउंट virtualenvदोनों से एक्सेस करने में सक्षम होना चाहिए ।usersuper user

15

समस्या का पता लगाएं

--verboseध्वज के साथ स्थापित करने का प्रयास करें

pip install virtualenv --verbose

आउटपुट कुछ इस तरह दिखेगा

  ..
  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...

आउटपुट से हम देख सकते हैं कि यह स्थापित है /home/manos/.local/bin/virtualenvताकि यह सुनिश्चित करें कि पैठ इसमें शामिल है।

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

मेरे मामले में हम स्पष्ट रूप से देख सकते हैं कि /home/manos/.local/binयह पूरी तरह से गायब है और इसीलिए शेल प्रोग्राम को नहीं ढूंढ सकता है।

समाधान

हम इसे कई तरीकों से हल कर सकते हैं:

  1. हम सीधे एक विशिष्ट निर्देशिका में पाइप के विकल्प (पुनर्संयोजित नहीं) के साथ fiddling द्वारा स्थापित कर सकते हैं।
  2. /usr/local/binसमान या समान समरूपता बनाएँ ।
  3. संलग्न /home/manos/.local/binपथ के लिए।
  4. सीधे स्थापित करने के लिए sudo के रूप में स्थापित करें /usr/local/bin

दो अंतिम विकल्प शायद सबसे समझदार हैं। अंतिम समाधान सबसे सरल है इसलिए मैं केवल समाधान 3 दिखाऊंगा।

इसे ~ / .profile में जोड़ें:

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

लॉग आउट करें और फिर से और यह काम करना चाहिए।


1
यह पूरी तरह से काम किया। यह विस्तृत विवरण के लिए स्वीकृत उत्तर और +1 होना चाहिए
डेविड द प्रोग्रामर

13

python3 -m virtualenv virtualenv_name

python -m virtualenv virtualenv_name


मेरे बिना काम किया 3. python -m virtualenv <name>
ofer.sheffer

11

मेरे मामले में, मैं pip show virtualenvvirtualenv पैकेज के बारे में जानकारी प्राप्त करने के लिए दौड़ा । मैं इसके समान दिखूंगा और पैकेज का स्थान भी दिखाऊंगा:

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: ianb@colorstudy.com
License: MIT
Location: /home/user/.local/lib/python3.6/site-packages
Requires: setuptools

उस स्थान के .localहिस्से को उस हिस्से तक ले जाएं, जो इस मामले में है /home/user/.local/। आप virtualenv कमांड के तहत पा सकते हैं/home/user/.local/bin/virtualenv

फिर आप जैसे कमांड चला सकते हैं /home/user/.local/bin/virtualenv newvirtualenv


10

मेरी भी यही समस्या थी। मैंने इसे काम करने के लिए निम्न चरणों का उपयोग किया

sudo pip uninstall virtualenv

sudo -H pip install virtualenv

बस इतना ही। इसने काम करना शुरू कर दिया।

उपयोगकर्ता के होम डायर को लक्षित करने के लिए sudo -H----> sudo -H: सेट HOMEचर का उपयोग ।


1
यह मेरे लिए ठीक उसी समस्या को ठीक करता है ... क्यों समाधान के रूप में इसकी जांच नहीं की जाती है?
मंगल

9

आपने कहा कि हर बार जब आप दौड़ते हैं तो pip installआपको मिलता है Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages। आपको जो करने की आवश्यकता है वह निम्नलिखित है:

  1. निर्देशिका बदलें (उस पर जाएं जहां virtualenv.py) cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
  2. यदि आप करते हैं तो lsआप देखेंगे कि स्क्रिप्ट वहाँ हैvirtualenv.py
  3. स्क्रिप्ट को इस तरह से चलाएं: python virtualenv.py --distribute /the/path/at/which/you/want/the/new/venv/at theNameOfTheNewVirtualEnv

उम्मीद है की यह मदद करेगा। मेरी सलाह होगी कि वेनव्स पर अधिक शोध करें। यहाँ एक अच्छा संसाधन है: https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/


8

मुझे परेशानी थी क्योंकि मैंने अजगर-वर्चुअन पैकेज को स्थापित करने के लिए उपयुक्त उपयोग किया था। इसे काम करने के लिए मुझे इस पैकेज को निकालना पड़ा apt-get remove python-virtualenvऔर इसे स्थापित करना पड़ा pip install virtualenv


1
कौन सा प्रश्न छोड़ता है: शैतान मेरा python3-virtualenv पैकेज क्यों टूटा है?
दिमित्री DB

6

सुनिश्चित करें कि virtualenvनिष्पादन योग्य है।

यदि virtualenvनहीं मिला है, तो पूर्ण पथ ( /usr/local/bin/virtualenv) चलाकर काम करना चाहिए।


5

मुझे लगता है कि आपकी समस्या को एक सरल प्रतीकात्मक लिंक का उपयोग करके हल किया जा सकता है , लेकिन आप गलत फ़ाइल का प्रतीकात्मक लिंक बना रहे हैं । जहां तक ​​मुझे पता है कि virtualenv स्थापित है /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv(आप अपने पायथन संस्करण के लिए संख्या बदल सकते हैं) तो प्रतीकात्मक लिंक बनाने के लिए कमांड होनी चाहिए:

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

सिंपल लिंक सेट करना मुझे बस इतना ही करना था। धन्यवाद।
किर्बी

5

पाइप के साथ AWS स्थापना पर ubuntu 18.4 सही ढंग से काम नहीं करता है। Apt-get install का उपयोग करने से मेरे लिए समस्या हल हो गई।

sudo apt-get install python-virtualenv

और जांच करने के लिए

virtualenv --version

4

एक ही समस्या: तो मैं अभी किया pip uninstall virtualenv तो pip install virtualenv

pip install virtualenv --user

संकलित करके virtualenv का उपयोग करके कैश की गई https://files.pythonhosted.org/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe8484747b64d523721dc2b5/virtualenvv-16.0-py2-py3-py3-py3-py3/py/3/3/3/3/30/30/30/30/30/30/183&hl=hi=

तब मुझे यह मिला:

स्क्रिप्ट virtualenv '/Users/brahim/Library/Python/2.7/bin' में स्थापित है जो PATH पर नहीं है। इस निर्देशिका को PATH में जोड़ने पर विचार करें या, यदि आप इस चेतावनी को दबाना पसंद करते हैं, तो -no-चेतावनी-स्क्रिप्ट-स्थान का उपयोग करें।

जो स्पष्ट रूप से कहता है कि यह कहाँ स्थापित है और इसे प्राप्त करने के लिए क्या करना है


2

यदि आप लिनक्स का उपयोग कर रहे हैं, तो अपना टर्मिनल खोलें और टैब की कुंजी के साथ virtualenv आधे रास्ते और स्वत: पूर्ण लिखें । यदि आपके सिस्टम पर कोई भी ऑटोनॉमस इनस्टॉल वर्चुअलबैनव नहीं चल रहा है:

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

अब आप उस जगह पर नेविगेट कर सकते हैं जहाँ आप अपनी परियोजना बनाना चाहते हैं और करते हैं:

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

मैंने अजगर 3.7 में अपग्रेड किया। मैं virtualenv को स्थापित करने की कोशिश करता रहा, यह हमेशा "त्रुटि: लौटेगा: एक ऐसा संस्करण नहीं मिला जो आवश्यकता virtualenv (संस्करणों से: कोई नहीं) को संतुष्ट करता है"। मैंने कहीं पढ़ा है कि एक निश्चित अजगर 3. x संस्करण से यह वर्चुअनव्यू इनस्टॉल के साथ आता है, लेकिन वर्चुअल वातावरण को सरल बनाने की कोशिश करते हुए, यह काम नहीं करता है, यह त्रुटि देगा कि यह वर्चुअन कमांड को नहीं जानता है। लेकिन इसने आपके जवाब से काम लिया, "virtualenv venv --python = python3.7"। पहले और कुछ नहीं किया। मामले में यह किसी और की मदद करता है। MacOS का वातावरण।
कारमेनए

1

यह ubuntu 18 और उससे ऊपर के काम करता है (पिछले संस्करणों में परीक्षण नहीं किया गया है):

sudo apt install python3-virtualenv

0

वर्चुअल एनवी सेटअप करने के लिए इन मूल चरणों का पालन करें

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

हमें अपने को अपडेट करने की आवश्यकता है ~/.bashrc

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

~/.bashrcफ़ाइल बस एक खोल स्क्रिप्ट है कि बैश चलाता है जब भी आप एक नया टर्मिनल का शुभारंभ है। आप विभिन्न कॉन्फ़िगरेशन सेट करने के लिए सामान्य रूप से इस फ़ाइल का उपयोग करते हैं। इस मामले में, हम एक पर्यावरण चर सेट कर रहे हैं जिसे WORKON_HOME उस निर्देशिका को इंगित करने के लिए कहा जाता है जहां हमारे पायथन आभासी वातावरण रहते हैं। फिर हम virtualenvwrapper से किसी भी आवश्यक कॉन्फ़िगरेशन को लोड करते हैं।

अपनी ~/.bashrcफ़ाइल को अपडेट करने के लिए बस एक मानक पाठ संपादक का उपयोग करें, नैनो संभवतः संचालित करने के लिए सबसे आसान है। बिल्ली के आदेश का उपयोग करने और संपादकों से पूरी तरह बचने के लिए एक और सरल उपाय है:

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

हमारी ~ / .bashrc फ़ाइल को संपादित करने के बाद, हमें परिवर्तनों को पुनः लोड करना होगा:

source ~/.bashrc

अब जब हमने virtualenv और virtualenvwrapper स्थापित किया है, तो अगला कदम वास्तव में पायथन वर्चुअल वातावरण बनाना है - हम mkvirtualenv कमांड का उपयोग करके ऐसा करते हैं।

mkvirtualenv YOURENV

0

मेरे लिए यह इस पथ में स्थापित किया गया था (MacOS पर अजगर 2.7): $ HOME / लाइब्रेरी / पायथन / 2.7 / बिन


0

मैं एंजेला यू के ऑनलाइन आईओएस कोर्स कर रहा हूं और मुझे वही समस्या हो रही थी और साथ ही मुझे अनुमति प्राप्त त्रुटि 13 की अनुमति मिल रही थी जब मैं दौड़ने की कोशिश कर रहा था virtualenv --python=/{myPath} {newVirtualEnvName}

मैंने इसे हल किया:

  1. sudo यूजर पर स्विच करना sudo su
  2. अपने गंतव्य फ़ोल्डर में नेविगेट करना (जहां मैं चाहता हूं कि मेरा नया वर्चुअल एनवी लाइव हो) अर्थात। / उपयोगकर्ताओं / muUserName / वातावरण /
  3. रन कमांड python -m virtualenv python27जहां python27 मेरे नए आभासी वातावरण का एक नाम है
  4. ऊपर मेरे वातावरण फ़ोल्डर में फ़ोल्डर pathon27 बनाया , और फिर मैं अपने virtualenv शुरू करने के लिए चलाने में सक्षम थाsource python27/bin/activate

0

सरल उत्तर यह है कि यदि आप एक sudo उपयोगकर्ता नहीं हैं जैसा कि मैं एक नहीं था। आपको अपने बिन फ़ोल्डर ( /home/myusername/.local/bin) का पथ जोड़ने की आवश्यकता है। मूल रूप से कमांड लाइन खोज में यह पता चलता है कि इनमें से कौन सा पथ आपके द्वारा टाइप किया गया कमांड है।

export PATH=/home/b18150/.local/bin:/usr/bin:/bin

यहाँ यह local/binपहले /usr/binऔर फिर में खोज करेगा /bin


0

मुझे लंबे समय से यही समस्या थी। मैंने इन दोनों कमांडों को चलाकर इसे हल किया, पहला है एनवी को सक्रिय करना दूसरा:

python3 -m pip install virtualenv
python3 -m virtualenv yourenvname

ध्यान दें कि मैं उपयोग कर रहा हूँ python3, तुम बस करने के लिए इसे बदल सकते हैं pythonअगर python3विफल रहता है। धन्यवाद।


-3
apt update
apt upgrade
apt install ufw python virtualenv git unzip pv

3 कमांड और सब कुछ काम कर रहा है!


सवाल मैक ओएस के लिए है, वहाँ नहीं हैapt
Matteo

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.