चिड़ियाघर में उपनाम स्थापित करना


75

मुझे पता है कि bash में आप एक .bash_aliases फ़ाइल में उपनाम सेट कर सकते हैं ताकि आपके द्वारा टाइप की जाने वाली कमांड को सिस्टम में बायनेरिज़ में संग्रहीत कमांड होने की आवश्यकता न हो। क्या कोई तरीका है कि मैं एलियास को ज़ीश में ले जाऊं?

जवाबों:


43

आप इस वाक्य रचना के साथ "उपनाम" कमांड द्वारा कर सकते हैं:

alias [ -gmrL ] [ name[=value] ... ]

"gmrL" स्विच के लिए, इस गाइड को देखें , जो मेरा संदर्भ है। बिना किसी मूल्य वाले प्रत्येक नाम के लिए, zsh नाम को प्रिंट करेगा और इसे पहले से अलियास किया गया है। किसी भी तर्क के साथ, उपनाम अन्य परिभाषित उपनामों के मूल्यों को छापते हैं।

एक या एक से अधिक उपनामों को परिभाषित करने के लिए, बस दर्ज करें

alias name1=value1 name2=value2 ... nameX=valueX

संबंधित मान वाले प्रत्येक नाम के लिए, zsh उस मान के साथ एक उपनाम को परिभाषित करता है। अधिक जानकारी के लिए, उस लिंक की जाँच करें ;;

अद्यतन: मृत लिंक को अद्यतन किया।


उस दस्तावेज़ ने मेरे प्रश्न का सटीक उत्तर दिया। बहुत धन्यवाद।
थॉमस वार्ड

वह लिंक नीचे है।
सोहम चौधरी

लिंक को अपडेट किया।
सैज़री

8
यह उत्तर उस भाग को याद करता है जहां उपनामों को जारी रखना है, कर्टोसिस उत्तर में यह (.zshrc) शामिल है।
फेलिक्स

1
मैं का उपयोग ~/.profileसभी उपनामों मैं के बारे में परवाह की दुकान और स्रोत के लिए ~/.profileसे ~/.zshrc
20

140

मैं बैश और ज़श के बीच आगे और पीछे जाता हूं, और दोनों के लिए एक ही .aliases फ़ाइल का उपयोग करता हूं। वे एक ही मूल उर्फ ​​वाक्यविन्यास को साझा करते हैं, इसलिए आप एक .aliases फ़ाइल बना सकते हैं और इसे .bashrc और .sh .sh से लिंक कर सकते हैं :

.bashrc:

if [ -f ~/.aliases ]; then
    . ~/.aliases
fi

.zshrc:

source $HOME/.aliases

Fwiw यह पर्यावरण चर घोषणाओं के साथ एक अलग .env फ़ाइल में भी किया जा सकता है ।


मैंने अभी .zshrc के अंत में स्रोत / / .bash_aliases जोड़ा है, इसलिए सभी उपनाम दोनों बैश और zsh पर काम कर रहे हैं
talsibony

इस तरह @talsibony: ~/ .bash_aliasesअगर आप वहाँ हैं, तो मुझे थोड़ी मदद की ज़रूरत है, जवाब दें
lewis4u

@ lewis4u ~ / और .bash_aliases के बीच जगह नहीं होनी चाहिए। यह बिल्कुल ~ / .bash_aliases होना चाहिए।
कर्टोसिस

आपके लिंक टूट गए हैं ..
Ilan.b

10

आप आम तौर पर उन्हें अंदर डालते हैं ~/.zshenv। लेकिन कई प्रोग्राम शेल कमांड को निष्पादित करने के बजाय /bin/sh(आमतौर पर bash) का उपयोग करते हैं $SHELL, इसलिए इसके लिए हर जगह काम करने के लिए आपको संभवतः किसी भी तरह bashसे उपनाम के बराबर रखने की आवश्यकता होगी ~/.bash_aliases


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