यदि आप नहीं चला सकते हैं chshक्योंकि आपके पास व्यवस्थापक विशेषाधिकार नहीं हैं, तो किसी ऐसे व्यक्ति से बात करें जो करता है ।
सबसे अधिक संभावना है कि आप chshगैर-रूट के रूप में उपयोग नहीं कर सकते क्योंकि आप जिस सिस्टम का उपयोग कर रहे हैं वह कॉन्फ़िगर किया गया है इसलिए chshकाम नहीं करेगा, क्योंकि सिस्टम केवल /etc/passwdफ़ाइल के बजाय एनआईएस या एलडीएपी का उपयोग करता है । या शायद आपके सिस्टम का व्यवस्थापक कुछ नियंत्रण बनाए रखना चाहता है।
आपके शेल को बदलने की प्रक्रिया आपके संगठन की नीतियों पर निर्भर करती है। एक स्थानीय कमांड हो सकता है जो chshसामान्य रूप से करता है। या आपको शेल परिवर्तन का अनुरोध करते हुए एक समर्थन टिकट जमा करने की आवश्यकता हो सकती है।
अधिकांश अन्य उत्तर अच्छे हैं, लेकिन यदि आपके व्यवस्थापक यथोचित रूप से उत्तरदायी हैं, तो आप अपने स्टार्टअप स्क्रिप्ट को हैक करने से परेशान नहीं होना चाहते। मैं शायद केवल zsh -lलॉग इन करने के बाद मैन्युअल रूप से आह्वान करूंगा जब तक कि व्यवस्थापक मेरे खाते को अपडेट करने के लिए चारों ओर न पहुंच जाए।
एक और बात ध्यान में रखें: कभी-कभी विभिन्न गोले एक ही स्टार्टअप फ़ाइलों का उपयोग कर सकते हैं। उदाहरण के लिए, shऔर bashदोनों निष्पादित कर सकते हैं $HOME/.profile, और cshऔर tcshदोनों निष्पादित कर सकते हैं $HOME/.loginऔर $HOME/.cshrc(हालांकि जैसा शेल-विशिष्ट स्टार्टअप फ़ाइलों .bashrc, .bash_profileऔर .tcshrcउन ओवरराइड कर सकते हैं)। यदि आपका डिफ़ॉल्ट शेल है /bin/cshऔर आप उपयोग करना चाहते हैं /bin/tcsh, तो अपने .loginइनवॉइस को अपडेट करने से /bin/tcsh -lएक अनंत लूप बन सकता है। -स्पेशल स्टार्टअप फ़ाइलों zshको निष्पादित करने के लिए नहीं होता है bash, इसलिए यह आपके लिए कोई समस्या नहीं है।
अधिकांश गोले चर की पहचान जो शैल आप (चला रहे हैं सेट $BASH_VERSION, $tcsh, $ZSH_VERSION)। यदि आप अपने पसंदीदा शेल को इनवॉइस करने के लिए स्टार्टअप कोड लिखने जा रहे हैं, तो यह एक बुरा विचार नहीं है, ifताकि आप इसे पहले से ही उस शेल में न चलाएं। Konsolebox के उत्तर से कोड का उपयोग करना :
if [ "${ZSH_VERSION:-unset}" = "unset" ] ; then
export SHELL=/bin/zsh
exec /bin/zsh -l
fi
( आपके द्वारा की गई संभावना के "${ZSH_VERSION:-unset}"बजाय जाँच की अतिरिक्त जटिलता , एक विकल्प है जो एक त्रुटि के लिए अपरिभाषित चर के संदर्भ का कारण बनता है।)"$ZSH_VERSION"set -o unset
zshपर जोड़ें.bashrc। लॉगआउट और लॉगिन और किया!