मैंने पायथन के दो संस्करण स्थापित किए हैं।
- पायथन 2.7.14 में
/usr/local/bin
- पायथन 2.7.5 इंच
/usr/bin
।
जब मैं टाइप # python
करता 2.7.14
हूं sudo python
, तो यह संस्करण का उपयोग करता है, लेकिन जब मैं टाइप करता हूं , तो यह संस्करण का उपयोग करता है 2.7.5
। मैं sudo python
संस्करण के लिए बिंदु कैसे बना सकता हूं 2.7.14
?
के आउटपुट में sudo env | grep PATH
, /usr/local/bin
पहले दिखाई देता है /usr/bin
लेकिन फिर भी यह पायथन से उठा रहा है /usr/bin
।
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
जब मैं sudo su
रूट शेल में प्रवेश करना चाहता हूं, तो यह मुझे देता है python 2.7.14
लेकिन उसी सत्र में यदि मैं टाइप करता हूं sudo python
, तो यह मुझे देता है python 2.7.5
।
मैं इस सवाल से गुज़रा लेकिन स्वीकार किए गए उत्तर में यह नहीं बताया गया है कि कैसे सुधो सही मार्ग का उपयोग करता है।
यहां बताया गया है कि सुरक्षित मार्ग कैसा दिखता है:
secure_path = /usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
sudo: type: command not found
। मैंने एक उपनाम बनाया, लेकिन मैंने इसे हटा दिया क्योंकि यह सुडो के लिए काम नहीं कर रहा था
sudo bash -c 'type python'
?
python is /bin/python
sudo type python
? (मुझे संदेह है कि आपनेpython
किसी और चीज़ की ओर इशारा किया, या कहीं एक समारोह बनाया।)