दो साल के विकास के बाद, GNU बैश 5.1 शेल का नया संस्करण जारी किया गया है, जो अधिकांश लिनक्स वितरण पर डिफ़ॉल्ट है। उसी समय, रीडलाइन 8.1 लाइब्रेरी का विमोचन किया गया, जिसका उपयोग कमांड लाइन संपादन को व्यवस्थित करने के लिए बैश में किया गया।
यह कई मुक्त यूनिक्स प्रणालियों पर डिफ़ॉल्ट दुभाषिया है, विशेष रूप से GNU / Linux सिस्टम पर। यह मैक ओएस एक्स का डिफ़ॉल्ट शेल भी है। सिगविन परियोजना ने इसे पहली बार विंडोज में लाया और विंडोज 10 में यह एक ऑपरेटिंग सिस्टम विकल्प है।
बैश 5.1 की मुख्य नई विशेषताएं
इंजन को छद्म यादृच्छिक संख्या उत्पन्न करने के लिए पुन: डिज़ाइन किया गया है, इसके अलावा se जोड़ा SRANDOM चर सिस्टम के छद्म-यादृच्छिक संख्या जनरेटर से एक 32-बिट यादृच्छिक संख्या है।
साहचर्य सरणियों के लिए, यौगिक असाइनमेंट के लिए समर्थन लागू किया गया है, जिसमें जोड़े का एक सेट कुंजी / मान प्रारूप में पारित किया जाता है, एक हैश तालिका के आकार में एक गतिशील वृद्धि के अलावा साहचर्य सरणी में जोड़े गए डेटा के प्रकार पर निर्भर करता है।
एक और बदलाव जो खड़ा है वह मोड में है POSIX, प्रक्रिया प्रतिस्थापन समारोह कार्यान्वित किया जाता है, जिससे किसी कमांड के इनपुट और आउटपुट को अन्य कमांड द्वारा फाइल के रूप में माना जाता है।
जोड़ा गया था रूपांतरण ऑपरेटरों के लिए नए पैरामीटर: "U", "u" और "L" पूरे स्ट्रिंग को अपरकेस में परिवर्तित करने के लिए, पहले वर्ण को अपरकेस में और लोअरकेस में परिवर्तित करें, साथ ही साथ पैरामीटर "K" को कुंजी / मान प्रारूप में एक सहयोगी सरणी प्रदर्शित करने के लिए।
बैकवर्ड कम्पैटिबिलिटी मोड को सक्षम करने के लिए, अब आपको BASH_COMPAT वैरिएबल का उपयोग करने की आवश्यकता है (आप कंपेट 5.0 विकल्प का उपयोग करके 50 कम्पैटिबिलिटी मोड को बैश नहीं कर सकते हैं)।
डिफ़ॉल्ट रूप से, Readline में ब्रैकेटेड पेस्ट मोड सक्षम है, जिसमें क्लिपबोर्ड से प्राप्त डेटा को क्लिपबोर्ड से प्राप्त डेटा को नेत्रहीन रूप से हाइलाइट करने के लिए एस्केप सीक्वेंस के साथ बनाया गया है। रीडलाइन ऐसे आवेषण के लिए हाइलाइटिंग प्रदान करता है, साथ ही वृद्धिशील और गैर-वृद्धिशील इतिहास खोजों के दौरान पाए गए पाठ को हाइलाइट करता है। उन आदेशों और स्थितियों की संख्या जिनके लिए हाइलाइटिंग लेबल ओवरराइड हैं, का विस्तार किया गया है।
इसके अलावा, एसई पिछला व्यवहार लौटाया के विस्तार से संबंधित है फ़ाइल पथ जब शब्दों को निर्दिष्ट करना जिसमें बैकस्लैश शामिल हैं लेकिन वे विशेष मुखौटा विस्तार पात्रों का उपयोग नहीं करते हैं।
4.4 में बैश के रूप में, ऐसे मार्गों का अब खुलासा नहीं किया गया है (बैश 5.0 का संशोधित व्यवहार POSIX मानक के अनुसार था, लेकिन उपयोगकर्ताओं द्वारा नकारात्मक रूप से प्राप्त किया गया था और POSIX समिति विनिर्देश को बदलने के लिए सहमत हुई थी)। इसके अलावा, GLOBIGNORE मोड अब "उपेक्षा" करता है। और टर्मिनल में निर्दिष्ट पथ घटकों के रूप में ".."।
टर्मिनल डेटा पढ़ते समय संशोधित अपवाद हैंडलिंग रीड का उपयोग करके और कंस्ट्रक्शन का चयन करें। अंतर्निहित चयन फ़ंक्शन अब फंस जाता है जब एक सिग्नल पढ़ने के लिए एक आंतरिक कॉल को बाधित करता है। SIGINT नियंत्रकों की पुनरावर्ती लॉन्च की अनुमति है।
रीडलाइन ने सिंगल लाइन टर्मिनलों पर स्वचालित क्षैतिज स्क्रॉलिंग को लागू किया है।
इसके अलावा, हम पा सकते हैं विभिन्न शॉर्टकट लिंक को परिभाषित करने के लिए समर्थन "bind -x" कमांड में विभिन्न संपादन मोड और विभिन्न कीबोर्ड लेआउट के लिए कीबोर्ड।
शाखाओं की संख्या का अनुकूलन लागू किया गया था जब उप-क्रम में कमांड निष्पादित कर रहे हों या "बैश -c" का उपयोग कर रहे हों "बैश -c" चलाते समय, नौकरी निष्पादन की स्थिति अब जॉब कमांड के साथ पाई जा सकती है।
पैटर्न मिलान कोड अब समान दिखने वाले स्ट्रिंग्स के लिए खाते में fnmatch कॉल का उपयोग करता है, लेकिन वर्ण कोड में भिन्न होता है।
आज्ञा शेल-ट्रांस्पोज़-वर्ड्स को रीडलाइन में जोड़ा गया है, शेल-फॉरवर्ड-वर्ड में समान शब्द परिभाषा का उपयोग करना। डिफ़ॉल्ट रूप से, कीबोर्ड बाइंडिंग शेल-फॉरवर्ड-वर्ड, शेल-बैकवर्ड-वर्ड, शेल-ट्रांसपोज़-वर्ड और शेल-किल-वर्ड के लिए जोड़ा गया था।
लिनक्स पर बैश 5.1 कैसे प्राप्त करें?
फिलहाल यह केवल बैश के इस नए संस्करण के शामिल होने की प्रतीक्षा करने के लिए बनी हुई है लिनक्स वितरण के भंडार के भीतर, क्योंकि यह सबसे अच्छा विकल्प है।
यदि आप कुछ और जानना चाहते हैं और वे भी जो इस नए संस्करण को प्राप्त करना चाहते हैं, आप निम्न लिंक पर जा सकते हैं।
और यह जानने के लिए कि आप किस संस्करण के साथ काम कर रहे हैं, आपको बस एक टर्मिनल खोलना है और इन तीन तरीकों में से किसी को आज़माना है (निश्चित रूप से अधिक होगा):
1) $ गूंज "$ {BASH_VERSION}"
2) $ बैश-फैलाव
3) कुछ भी टाइप किए बिना, कट और पेस्ट कुंजी संयोजन का उपयोग करें, जो है: Ctrl + x Ctrl + v