2013-01-11 9 views
19

zsh के साथ iTerm2 का उपयोग करना और यह मेरे उपनामों को पहचान नहीं रहा है। कभी-कभी मुझे एक आईडीई में काम करना पड़ता है और केवल कुछ आसानी से विम नहीं कर सकता है और बेवकूफ लोगों ने अपने अनुप्रयोगों जैसे MyReallyLongApplicationName.app और नाम से .html फ़ाइलों को डिफ़ॉल्ट रूप से खोलने के लिए एक अच्छा विचार सोचा है, मुझे यह करना होगा:जेडएसएच मेरे उपनामों को पहचान नहीं रहा है?

open -a MyReallyLongApplicationName.app something.html 

मैं तरह मेरे .zshrc में एक उपनाम है:

alias ide="open -a MyReallyLongApplicationName.app" 

लेकिन zsh मेरी उपनाम पहचान नहीं होगा। मैंने यह देखने के लिए एक और कोशिश की कि क्या यह मैं था लेकिन मेरे द्वारा बनाए गए उपनामों में से कोई भी मान्यता प्राप्त नहीं है। बस "zsh: कमांड नहीं मिला: ide" या जो भी हो।

इसलिए मुझे यकीन नहीं है कि मैं क्या गलत कर रहा हूं और मैं zsh और इसी तरह की चीजों को ठीक करने की कोशिश कर रहा हूं। एक नोट के रूप में, मैं लिनक्स/यूनिक्स सिस्टम में समर्थक नहीं हूं इसलिए यदि आप बहुत तकनीकी और अस्पष्ट हैं तो शायद मैं समझ नहीं पाऊंगा कि आप मुझे क्या कह रहे हैं।

धन्यवाद!

+0

ए) क्या आपको इंटरैक्टिव सत्र में या स्क्रिप्ट में «आदेश नहीं मिला» मिलता है। बी) क्या उपनाम टाइप किए गए कमांड को परिभाषित करता है (यानी 'alias ide = ... ide ') इंटरैक्टिव सत्र में? सी) आपके '.zshrc' में क्या है। डी) क्या यह काम करता है यदि आप 'zshrc'' के साथ एक इंटरैक्टिव सत्र में 'zsh -i' लॉन्च करते हैं? – ZyX

+0

परिवर्तन करने के बाद मैंने स्रोत नहीं किया ... क्षमा करें। –

उत्तर

52

यदि आप zsh में बहुत ही सरल उपनाम करते हैं, तो क्या यह काम करता है? अपने .zshrc फ़ाइल को खोलने और निम्न पंक्ति जोड़ें:

alias ls='ls -GpF' 

कि लाइन, अपने टर्मिनल प्रकार के भीतर इस लाइन को जोड़ने से बाद:

source .zshrc 

हमें बताओ क्या होता है। इसके अलावा, केवल shiggles के लिए, सुनिश्चित करें कि आप सिंगल कोट्स बनाम डबल कोट्स का उपयोग कर रहे हैं, मैंने देखा है कि अतीत में शैल/ओएस/व्हाट्नॉट के विभिन्न संस्करणों पर एक अंतर बनाते हैं।

+2

एकल/डबल अप्रासंगिक है जब तक स्ट्रिंग में कुछ विशेष वर्ण नहीं होते हैं (जैसे '$' और «\' »)। – ZyX

+2

मुझे कुछ मिनट पहले समस्या मिली। मुझे यह जानने के लिए पर्याप्त अनुभव नहीं हुआ कि मुझे खोल आरसी में बदलाव करने के बाद स्रोत की आवश्यकता है। मैंने अभी माना है कि .vimrc में परिवर्तन की तरह और जैसे कि परिवर्तन तत्काल थे। तो अब मैंने सोर्स किया है, सब ठीक है। आने के लिए धन्यवाद, भले ही यह मेरे हिस्से पर इतनी सरल गलती है। –

+1

@RKS परिवर्तन '.vimrc' में परिवर्तन तत्काल तभी होते हैं जब आपके पास कुछ vim प्लगइन (या vimrc में कुछ कोड) हो जो उन्हें तत्काल बनाते हैं। यह डिफ़ॉल्ट व्यवहार नहीं है। कोड लिखना असंभव नहीं है जो zsh के लिए एक ही उद्देश्य प्रदान करता है। – ZyX

1

~/.zshrc फ़ाइल में परिवर्तनों को सहेजने के बाद, एक नई खोल विंडो खोलें और इसमें कमांड निष्पादित करें।

10

अपनी ~/.zsh config फ़ाइल में "स्रोत ~/.bash_profile" जोड़ें।

1

इस लाइन रखो:

/source: 'source ~/.bash_profile' into ~/.zshrc 
0

कभी कभी सरल उपाय है कि हम क्या जरूरत है ... जोड़ें "स्रोत ~/.bash_profile" अपने ~/.zshrc कॉन्फ़िग फ़ाइल है

echo source ~/.bash_profile >> ~/.zshrc 
0

सुनिश्चित करें कि डबल कोट्स वास्तविक डबल कोट्स हैं और कुछ अन्य चरित्र नहीं हैं जो डबल कोट्स की तरह दिखते हैं।

मैं ओएसएक्स - टेक्स्ट एडिट में ~/.zsh-aliases संपादित कर रहा था, जो डबल कोट्स कुंजी को मारने पर इसे एक और विशेष डबल कोट्स चरित्र के लिए प्रतिस्थापित कर दिया गया था, जो जेडएसएच की अपेक्षा नहीं करता है।

सब्लिम के साथ उपनाम फ़ाइल को संपादित करने और वास्तविक डबल कोट्स के साथ पुराने डबल कोट्स को प्रतिस्थापित करने के बाद सबकुछ ठीक चलता है।

उम्मीद है कि इससे मदद मिलती है।

संबंधित मुद्दे