~ /। लाभार्थी स्टार्टअप पर नहीं चलता है


0

मैं सिस्टम स्टार्टअप पर कुछ स्क्रिप्ट चलाना चाहता हूं, इसलिए ~ / .profile फ़ाइल में, मैंने जोड़ा है:

WORKSPACE="~/Development/workspace"
alias workspace="cd $WORKSPACE"

इसलिए मैं चाहता हूं कि यह "कार्यक्षेत्र" उर्फ ​​स्टार्टअप के बाद उपलब्ध हो। शायद यह इन चरों को परिभाषित करने के लिए सही जगह नहीं है।


आप zsh के नामित निर्देशिकाओं को देखना चाहते हैं। यदि आप export workspace=~/Development/workspace, आप बस के रूप में पथ को संदर्भित कर सकते हैं ~workspace; जैसेcd ~workspace
माइकल मर्जेक

@ जो मुझे बस एक आदत में बदल गया। मैं हमेशा इसे बंद करने और इस पर टिप्पणी करने के लिए वोट देता हूं। यह निम्न प्रतिनिधि उपयोगकर्ताओं के लाभ के लिए है (विशेषकर यदि ऑप निम्न प्रतिनिधि है) क्योंकि वे वोटों को बंद नहीं देख सकते हैं
अर्लज़

1
@pocoa: आप जिस तरह के "स्टार्टअप" का उल्लेख कर रहे हैं, उसके बारे में बताएं। $ शेल स्टार्टअप? windowmanager स्टार्टअप? कुछ अन्य कार्यक्रम स्टार्टअप? सिस्टम स्टार्टअप?
अकीरा

जवाबों:


2

शायद आप कार्यों को निर्यात करना चाहते थे?

export WORKSPACE="~/Development/workspace"

आपको 'सेट' चलाने में सक्षम होना चाहिए और $ WORKSPACE के मूल्य को देखना चाहिए जैसा कि यह है - यह सेट है, लेकिन पर्यावरण चर नहीं है क्योंकि आपने इसे निर्यात नहीं किया है। AFAIK, आपका उपनाम केवल शीर्ष-स्तरीय शेल में उपलब्ध होगा। आप .bashrcउप-गोले में भी इसे उपलब्ध कराने के लिए उपनाम या जगह देंगे । (अधिक जानकारी के लिए बैश मैनुअल की '6.2 'बैश स्टार्टअप फाइल्स' देखें। यह भी देखें कि आपके होम डाइरेक्टरी में कोई फाइल .bash_loginया .bash_profileफाइल नहीं है , उनमें से एक का उपयोग वरीयता में किया जाएगा - साथ ही साथ - नहीं .profile। )

एक अन्य संभावना - आप बैश या कोर्न शेल का उपयोग करने के लिए कॉन्फ़िगर नहीं किए गए हैं। मुझे लगता है कि संभावना नहीं है, लेकिन सवाल से पूरी तरह से बाहर नहीं है। सी शेल परिवार इसके बजाय फ़ाइलों .loginऔर .cshrcफ़ाइलों का उपयोग करता है ।


तो आप ऐसा कैसे करेंगे? मुझे पता है कि मैं कमांड लाइन पर टाइपिंग के साथ उपनाम जोड़ सकता हूं। लेकिन मैं हर बार ऐसा नहीं करना चाहता, मैं इसे स्वचालित करना चाहता हूं।
पोकोआ

हां, .bash_login और .bash_profile मौजूद नहीं है।
पोकोआ

उपनाम निर्यात नहीं किए जा सकते। इस मामले में चर को निर्यात करने की कोई आवश्यकता नहीं है यदि इसकी आवश्यकता बच्चों के वातावरण में नहीं है जिसमें यह परिभाषित है। कुछ लोग अपने द्वारा बनाए गए प्रत्येक चर का निर्यात करते हैं, लेकिन यह नाम टकराव या लिपियों में अनधिकृत चर के कारण अप्रत्याशित परिणामों के साथ समस्या पैदा कर सकता है।
डेनिस विलियमसन

@ डेनिस: AFAICT (और निश्चित रूप से जैसा कि मेरा इरादा था), मैंने कहा कि उर्फ ​​निर्यात या निर्यात योग्य नहीं है। आप सही हैं कि प्रत्येक चर को निर्यात करने की आवश्यकता नहीं है; फिर से, मैंने यह नहीं कहा कि वे सभी निर्यात किए जाने चाहिए। यह इस बात पर निर्भर करता है कि क्या @pocoa का उपनाम के अलावा अन्य चर के लिए कोई उपयोग है या नहीं। मेरा संदेह यह है कि यह आम तौर पर एक निर्यात चर के रूप में उपयोगी हो सकता है, लेकिन यह अनिवार्य रूप से मामला नहीं है।
जोनाथन लेफ़लर

क्षमा करें यदि मैं अस्पष्ट था। मेरा मतलब था कि आपने जो कहा, उसे सही नहीं किया। इसके अलावा, यदि कोई अन्य व्यक्ति की तरह ही कार्यक्षमता चाहता है, लेकिन इसे बाल प्रक्रियाओं में उपलब्ध है, तो बैश कार्यों में निर्यात किया जा सकता है।
डेनिस विलियमसन

0

तो आपका सवाल क्या है? क्या आपका मतलब है कि जब आप यूनिक्स बॉक्स में प्रवेश करते हैं तो उर्फ ​​"कार्यक्षेत्र" उपलब्ध नहीं होता है?


हाँ। मैं "कार्यक्षेत्र" टाइप करना चाहता हूं और अपने कार्यक्षेत्र फ़ोल्डर तक पहुंच चाहता हूं।
कोको

क्या आपका मतलब है जब आप लॉगिन करते समय "कार्यक्षेत्र" टाइप करते हैं, तो यह आपको उपयुक्त फ़ोल्डर में नहीं ले जाता है? क्या आपने इसे उर्फ ​​कार्यक्षेत्र = "सीडी ~ / विकास / कार्यक्षेत्र" के रूप में डालने की कोशिश की है

@Kunal: कमांड लाइन में? मैं इसे हर बार टाइप नहीं करना चाहता।
पोकोआ

0

मैं चला गया:

~/.bashrc

यह अब काम करता है।


0

एक सामान्य नियम के रूप में, आप के लिए एक वातावरण चर सेट करना चाहते हैं, आप का उपयोग करना चाहिए exportमें .profile, के रूप में दूसरों को पहले से ही कहा। आप इसे बस में भी सेट कर सकते हैं .bashrc, लेकिन यह मेमोरी की बर्बादी होगी (ऐसा नहीं है कि यह बहुत मायने रखता है, बस चीजों के सिद्धांत के रूप में)। एलियासेस के लिए, आपको उन्हें हर शेल में सेट करना चाहिए, ताकि उसे जाना चाहिए .bashrc। या उससे भी बेहतर, .aliasजो डिफ़ॉल्ट रूप से .bashrc(उबंटू में कम से कम, लेकिन शायद अन्य डिस्ट्रो में भी) खट्टा है।


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