से शुरू हो जाती है मैं लिनक्स में एक व्यवहार को समझने के लिए एक सरल समस्या है। संक्षेप में, लिनक्स पर यदि मैं अपनी श्ल स्क्रिप्ट को 'डेस्कटॉप शॉर्टकट' से आह्वान करता हूं तो स्क्रिप्ट नवीनतम पर्यावरण चर (bashrc में सेट) नहीं देख सकता है। तो मैं सोच रहा था कि इस शेल स्क्रिप्ट में किस दायरे में स्थित है?पढ़ा नहीं .bashrc जब खोल स्क्रिप्ट डेस्कटॉप शॉर्टकट
एक testcase बनाने के लिए और पुन: पेश:
एक सरल खोल स्क्रिप्ट 'testme.sh' बनाएं:
!/bin/sh echo "Hi This is a test script checking the env var"; echo "TESTVAR = $TESTVAR"; read in echo "Done";
ऊपर स्क्रिप्ट के लिए डेस्कटॉप शार्टकट बनाएँ।
cd ~/Desktop vi mytest-desktop.desktop //Contents for mytest-desktop.desktop are : [Desktop Entry] Version=1.0 Type=Application Name=TestAbhishek Exec=/home/abhishek/test/hello.sh Terminal=true
- अब चर
export TESTVAR=test_this_variable
खुला एक नया टर्मिनल स्थापित करने के लिए अपने .bashrc फ़ाइल को अद्यतन करने और यह ~/testme.sh 'की तरह पूर्ण पथ का उपयोग स्क्रिप्ट को निष्पादित // यह .bashrc फ़ाइल से परिवर्तनीय 'टेस्टवायर' के मान को देख सकता है।
अब, बस डेस्कटॉप शॉर्टकट पर डबल क्लिक करें और निष्पादित करें। // इसे टर्मिनल खोलना चाहिए और 'टेस्टवायर' के लिए खाली मूल्य को प्रिंट करना चाहिए। // तो मेरा सवाल यह है कि इस शॉर्टकट द्वारा टर्मिनल के लिए माता-पिता कौन है?
मैं RHL पर इस कोशिश की है। मैं इस समस्या के लिए समाधान या डब्ल्यू/ए की तलाश में हूं, उम्मीद है कि कोई जल्द ही मदद कर सकता है।
धन्यवाद, अभिषेक।