अपने पथ को निर्दिष्ट किए बिना अपना कार्यक्रम कैसे चलाएं


11

मान लीजिए कि मैंने कुछ संकलित किया है और मैं इसे ऐसे ही चलाता हूं:

$ /path/to/my/executable/mycmd
Hello World

इसे चलाने के लिए मुझे क्या करना होगा

$ mycmd
Hello World 

मेरे कंप्यूटर में हर जगह से?

जवाबों:


15

आप जो खोज रहे हैं वह PATHपर्यावरणीय चर है। यह शेल को बताता है, जहां इसे कार्यक्रमों की तलाश करने की आवश्यकता है। आप उस चर के वर्तमान मूल्य का उपयोग करके देख सकते हैं echo:

echo "$PATH"

अब ... यदि आप कुछ नए प्रोग्राम का उपयोग करना चाहते हैं तो सबसे अच्छा अभ्यास यह है कि इसे अपने वितरण के लिए पैकेज प्रबंधन प्रोग्राम का उपयोग करके इंस्टॉल करें। लेकिन इस मामले में, मुझे लगता है कि आप एक ऐसे प्रोग्राम के साथ काम कर रहे हैं जो किसी भी उपलब्ध सॉफ्टवेयर पैकेज द्वारा वितरित नहीं किया गया है। ऐसे कार्यक्रमों के लिए, आपके पास दो विकल्प हैं:

  1. प्रोग्राम सिस्टम-वाइड स्थापित करें, ऐसे स्थान पर जहां आपका सिस्टम पैकेजों से स्थापित कोई भी फाइल नहीं डालता है। अधिकांश प्रणालियों पर, ऐसे "सुरक्षित" फ़ोल्डर्स शामिल हैं /usr/local/bin/और /opt/bin/- जो पहले से ही आपके में होना चाहिए PATH। (इन फ़ोल्डरों के अंदर देखें और अगर उनमें कई फाइलें हैं, तो यह अपना प्रोग्राम डालने के लिए गलत जगह है और आपको अपने में सूचीबद्ध अन्य फ़ोल्डरों को देखना होगा PATH।)
  2. अपने PATHचर को संशोधित करें । यह कम सुरक्षित है, क्योंकि यह उन अतिरिक्त फ़ोल्डरों को परिभाषित करता है जहां प्रोग्राम रखे जा सकते हैं और कोई व्यक्ति आपके ऊपर एक ट्रिक खेल सकता है, जिसे चलाने के लिए आपका खुद का प्रोग्राम वहां रखा जाए।

    आप PATHचर का उपयोग करके अस्थायी रूप से संशोधित कर सकते हैं

    export PATH="$PATH:/path/to/your/executable"
    

    (मन के $PATH बाद = ), या स्थायी रूप से उपरोक्त .bashrcफ़ाइल को अपनी फ़ाइल में जोड़कर (आप उपयोग करते हैं bash)।

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