मैं बैश में रिक्त स्थान के साथ एक पाथ घटक को कैसे सेट और उपयोग कर सकता हूं?


0

मेरे पास मेरे OS X माउंटेन लायन लैपटॉप पर Mathematica 8 स्थापित है। मैं अपना PATH सेट करना चाहता हूं ताकि मैं या तो मैथेमेटिका कर्नेल या मैथेमैटिका कमांड लाइन से चला सकूं। इसके लिए मैंने अपने .bash_profile को कॉन्फ़िगर किया है ताकि यह पढ़े:

$MAC_Mma="/Applications/Mathematica\ Home\ Edition.app/Contents/MacOS/"
export PATH=/opt/local/bin:/Users/comerduncan/newipython/ipython/build/scripts-2.7/:/Users/comerduncan:/Users/comerduncan/Sandbox/sympy/sympy/:$MAC_Mma:$PATH

जब टर्मिनल बनाया जाता है ।bash_profile फ़ाइल पढ़ी जाती है और मैं MathematicaK कर्नेल को निष्पादित करने का प्रयास करता हूं, तो ऐसा कोई निष्पादन योग्य नहीं मिलता है। हालांकि, अगर मैं एक उपनाम बनाता हूं:

alias math='/Applications/Mathematica\ Home\ Edition.app/Contents/MacOS/MathKernel'

.bash_profile फ़ाइल में, तब जब मैं गणित चलाता हूँ तो कर्नेल सामान्य रूप से शुरू होता है।

काश, यह उपनाम किसी अन्य मामले में मेरी ज़रूरत पर फिट नहीं बैठता, जहाँ एक bash स्क्रिप्ट चलती है, जिसे मार्ग में MathematicaKernel को खोजने की आवश्यकता होती है। तो, मेरा सवाल यह है कि अन्य तरीके से काम क्यों करता है और पथ के माध्यम से मेरा काम नहीं करता है?

जवाबों:


4

अपने चरों में बैकस्लैश का उपयोग करना बंद करें, और उन्हें उद्धृत करना शुरू करें।

foo="/path/that/has some spaces"
PATH="$foo":"$PATH"

आपकी सहायता के लिए धन्यवाद। मुझे यह स्वीकार करना चाहिए कि मैं आमतौर पर एक csh व्यक्ति हूं, लेकिन हाल ही में अंततः बैश में जाने की कोशिश की है। तो बैश के साथ मेरी अनुभवहीनता दिख रही है! आपका सुझाव ठीक काम करता है। वास्तव में, मैंने बाद में एक गैर-कामकाजी बैश स्क्रिप्ट की मरम्मत की है जिसे प्रसंस्करण का एक गुच्छा करने के लिए MathK कर्नेल की आवश्यकता है। इसलिए अब मुझे वही करना चाहिए जो मुझे चाहिए। कॉमर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.