लिनक्स पर आप update-alternative
कमांड के वर्जन को बदलने के लिए उपयोग कर सकते हैं ।
OS X (10.8) में कौन सी कमांड चालू कमांड के विकल्प को स्विच करेगी?
लिनक्स पर आप update-alternative
कमांड के वर्जन को बदलने के लिए उपयोग कर सकते हैं ।
OS X (10.8) में कौन सी कमांड चालू कमांड के विकल्प को स्विच करेगी?
जवाबों:
मैं आपके प्रश्न के पीछे की प्रेरणा को समझता हूं। update-alternatives
सुंदर ढंग से कई स्थापित या विभिन्न बंदरगाहों के लिए एक कार्यक्रम का ((उदाहरण के जावा के लिए) के लिए एक कार्यक्रम के संस्करणों के प्रबंधन की समस्या का हल vim
बनाम elvis
बनाम vile
उन्हें डिफ़ॉल्ट एक से एक बनाने के द्वारा)।
update-alternatives
, कई लिनक्स डिस्ट्रो में पाया जाता है /bin
, जो /usr/bin
(और इस तरह) से /etc/alternatives
और उस स्थान तक सहानुभूति का एक सेट बनाता है और उस स्थान का प्रबंधन करता है जहां कार्यक्रम स्थापित किया गया है।
उदाहरण के लिए, में openSUSE java
सांकेतिक रूप से लिंक है /etc/alternatives/java
, जो एक "निजी" पथ के लिए सांकेतिक रूप से लिंक है, जहां java
रहता है:
/usr/bin/java -> /etc/alternatives/java
/etc/alternatives/java -> /usr/lib64/jvm/java-1.5.0-sun-1.5.0/jre/bin/java
दुर्भाग्य से, और हालांकि कुछ को लगता है कि यह आवश्यक होगा, कम से कम मैकपोर्ट्स के लिए, ओएस एक्स में ऐसी कोई बात नहीं है । मैंने व्यक्तिगत रूप update-alternatives
से अपने साथ उपनाम की कमी को हल किया है .bashrc
:
alias ls='/usr/local/bin/ls'
या बस बदल रहा है $PATH
:
PATH=/usr/local/bin:$PATH
यदि आप इसे इस तरह से हल नहीं कर सकते हैं और इसे ओएस एक्स को पोर्ट करने के तथ्य का वजन कर रहे हैं, तो ध्यान रखें कि हालांकि update-alternatives
'पहले अवतार एक पर्ल स्क्रिप्ट थी, इसे सी में डेबियन के लिए फिर से लिखा गया था , और कुछ अन्य डिस्ट्रो ने इसे बाद में अपनाया (उदाहरण के लिए) OpenSUSE 12.1)।
OpenSUSE 11.4 RPM पैकेज के रूप में पर्ल संस्करण प्रदान करता है । यदि आप सी संस्करण की तलाश कर रहे हैं, तो किसी भी हाल के उबंटू या डेबियन रिलीज, या ओपनएसयूएसई 12.1 या बाद के संस्करण के लिए जाएं।
update-alternatives
विशेष रूप से एक डेबियन बात है, मुझे विश्वास है (हालांकि स्पष्ट रूप से कई अन्य डिस्ट्रोयन डेबियन पर आधारित हैं; लेकिन आप इसे कई आरपीएम-आधारित डिस्ट्रोस, जेंटो, आदि पर नहीं पाएंगे)।