आधुनिक UNIX वातावरण में उपयोग किए जाने वाले अधिकांश गोले POSIX श विनिर्देश के अनुरूप हैं। POSIX श को मूल कोर्न शेल (ksh88) से लिया गया है, जो कि पहले बॉर्न शेल से व्युत्पन्न है, लेकिन POSIX sh केवल ksh88 की कार्यक्षमता का एक छोटा उपसमूह भी निर्दिष्ट करता है। एक शेल जो केवल न्यूनतम आवश्यकता को लागू करता है वह सभी लिखने के लिए आवश्यक कई विशेषताओं को याद कर रहा है लेकिन एक सुरक्षित और उचित तरीके से स्क्रिप्ट का सबसे तुच्छ। उदाहरण के लिए, स्थानीय चर और सरणियाँ गैर-मानक एक्स्ट्रा कलाकार हैं।
इसलिए, पहला कारण अतिरिक्त सुविधाओं के साथ शेल का विस्तार करना है। अलग-अलग गोले अलग-अलग चीजों पर ध्यान केंद्रित करने के लिए चुनते हैं। उदाहरण के लिए, Zsh उन्नत इंटरैक्टिव सुविधाओं पर ध्यान केंद्रित करता है, जबकि ksh93 (वर्तमान "मूल" कोर्न शेल) शक्तिशाली प्रोग्रामिंग सुविधाओं और प्रदर्शन पर केंद्रित है। यहां तक कि डैश जैसे बहुत कम गोले स्थानीय चर की तरह कम से कम कुछ गैर-मानक अतिरिक्त जोड़ते हैं।
अतिरिक्त सुविधाएँ शायद ही कभी व्यापक रूप से अंतर-योग्य हैं, यदि बिल्कुल। Ksh88 के अधिकांश फीचरसेट काफी अच्छी तरह से परस्पर जुड़े हुए हैं जैसे कि विस्तारित ग्लोबिंग सिंटैक्स, लेकिन गैर-मानक विशेषताओं के साथ, कोई गारंटी नहीं है, और आपको वास्तव में पता होना चाहिए कि आप उन्हें पोर्टेबल तरीके से उपयोग करने के लिए क्या कर रहे हैं।
दूसरा कारण विरासत है। वहाँ अभी भी बहुत सारे मालिकाना यूनिक्स हैं जो अपने / बिन / श के लिए प्राचीन गैर-मानक कार्यान्वयन का उपयोग करते हैं। कुछ समय पहले तक, सोलारिस ने अभी भी बॉर्न को अपने बचाव के रूप में इस्तेमाल किया था और कुछ आधुनिक के उन्नयन के बजाय हीरलूम शेल को बनाए रखने के लिए चुना था। ये सिस्टम आमतौर पर अलग-अलग गोले के साथ आते हैं, उदाहरण के लिए, आप अपने पैट वैरिएबल को बदलकर या अलग-अलग स्क्रिप्ट के भीतर शेबंग को बदल सकते हैं।
इसलिए संक्षेप में। डिफ़ॉल्ट रूप से अक्सर कई गोले होते हैं:
- अतिरिक्त सुविधाओं के लिए, विशेष रूप से गैर-पोर्टेबल अतिरिक्त से निपटने के लिए।
- विरासत की लिपियों को संभालने के लिए जिन्हें अक्सर अनसुना कर दिया जाता है।
- आकार / प्रदर्शन। एंबेडेड सिस्टम में अक्सर छोटे गोले जैसे mksh या busybox sh की आवश्यकता होती है।
- लाइसेंसिंग कारण। AT & T ksh 2000 या उसके आसपास तक का मालिकाना सॉफ्टवेयर था। यह काफी हद तक Zsh और बैश जैसे सभी ksh- जैसे क्लोन को जन्म देता है।
- अन्य ऐतिहासिक कारण। हालांकि आज बहुत लोकप्रिय नहीं है, फिर भी भाषा को नए सिरे से तैयार करने की कोशिश की गई है, जैसे कि scsh और es। कई गोले की प्रक्रिया प्रतिस्थापन सुविधा मूल रूप से आरसी (थोड़ा अलग सिंटैक्स के साथ), और सीएचएस से ब्रेस विस्तार से आती है। अलग-अलग गोले में ऐसी विशेषताओं के अलग-अलग संयोजन उपलब्ध हैं, आमतौर पर कुछ सूक्ष्म या नहीं तो सूक्ष्म अंतर के साथ।