अंग्रेज़ीफ्रेंचस्पेनिश

Ad


ऑनवर्क्स फ़ेविकॉन

बैश-स्टैटिक - क्लाउड में ऑनलाइन

उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर पर ऑनवर्क्स फ्री होस्टिंग प्रदाता में बैश-स्टैटिक चलाएं

यह कमांड बैश-स्टैटिक है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।

कार्यक्रम:

नाम


बैश - जीएनयू बॉर्न-अगेन शेल

SYNOPSIS


खूब जोर से पीटना [विकल्प] [कमांड_स्ट्रिंग | फ़ाइल]

कॉपीराइट


बैश फ्री सॉफ्टवेयर फाउंडेशन, इंक द्वारा कॉपीराइट (सी) 1989-2013 है।

वर्णन


खूब जोर से पीटना है एक sh-संगत कमांड भाषा दुभाषिया जो पढ़े गए कमांड को निष्पादित करता है
मानक इनपुट या किसी फ़ाइल से। खूब जोर से पीटना से उपयोगी सुविधाएँ भी सम्मिलित करता है कॉर्न और C
सीपियाँ (क्ष और csh).

खूब जोर से पीटना इसका उद्देश्य शेल और यूटिलिटीज भाग का अनुरूप कार्यान्वयन करना है
आईईईई पॉज़िक्स विनिर्देश (आईईईई मानक 1003.1)। खूब जोर से पीटना POSIX के रूप में कॉन्फ़िगर किया जा सकता है-
डिफ़ॉल्ट रूप से अनुरूप.

विकल्प


के विवरण में सभी एकल-वर्ण शैल विकल्प प्रलेखित हैं सेट
शेल चालू होने पर बिल्टइन कमांड को विकल्प के रूप में उपयोग किया जा सकता है। इसके अलावा, खूब जोर से पीटना
जब इसे लागू किया जाता है तो निम्नलिखित विकल्पों की व्याख्या करता है:

-c अगर -c विकल्प मौजूद है, तो कमांड पहले गैर-विकल्प से पढ़े जाते हैं
तर्क कमांड_स्ट्रिंग. यदि के बाद तर्क हैं कमांड_स्ट्रिंगवे,
से शुरू करके स्थितीय मापदंडों को सौंपा गया है $0.
-i अगर -i विकल्प मौजूद है, शेल मौजूद है इंटरैक्टिव.
-l बनाना खूब जोर से पीटना ऐसे कार्य करें जैसे कि इसे लॉगिन शेल के रूप में लागू किया गया हो (देखें)। मंगलाचरण नीचे).
-r अगर -r विकल्प मौजूद है, शेल बन जाता है प्रतिबंधित (देखें वर्जित शेल
नीचे).
-s अगर -s विकल्प मौजूद है, या यदि विकल्प प्रसंस्करण के बाद कोई तर्क नहीं रहता है,
फिर कमांड मानक इनपुट से पढ़े जाते हैं। यह विकल्प इसकी अनुमति देता है
एक इंटरैक्टिव शेल को लागू करते समय स्थितीय पैरामीटर सेट किए जाने चाहिए।
-D पूर्ववर्ती सभी दोहरे-उद्धृत स्ट्रिंग्स की एक सूची $ मानक पर मुद्रित होता है
आउटपुट. ये वे तार हैं जो भाषा अनुवाद के अधीन हैं जब
वर्तमान स्थान नहीं है C or POSIX. इसका तात्पर्य है -n विकल्प; कोई आदेश नहीं होगा
सज़ा पाएं।
[-+]ओ [shopt_option]
shopt_option द्वारा स्वीकृत शेल विकल्पों में से एक है दुकान बिल्टिन (देखें
शेल अंतर्निहित कमानों नीचे)। अगर shopt_option उपस्थित है, -O का मान निर्धारित करता है
वह विकल्प; +O इसे अनसेट करता है. अगर shopt_option आपूर्ति नहीं की गई है, नाम और
द्वारा स्वीकार किए गए शेल विकल्पों के मान दुकान मानक पर मुद्रित होते हैं
आउटपुट. यदि मंगलाचरण विकल्प है +O, आउटपुट एक प्रारूप में प्रदर्शित होता है
जिसे इनपुट के रूप में पुन: उपयोग किया जा सकता है।
-- A -- विकल्पों के अंत का संकेत देता है और आगे की विकल्प प्रक्रिया को अक्षम कर देता है। कोई
के बाद तर्क -- फ़ाइल नाम और तर्क के रूप में माना जाता है। का एक तर्क -
के बराबर है --.

खूब जोर से पीटना कई बहु-चरित्र विकल्पों की व्याख्या भी करता है। ये विकल्प अवश्य दिखाई देने चाहिए
पहचाने जाने वाले एकल-वर्ण विकल्पों से पहले कमांड लाइन।

--डीबगर
शेल प्रारंभ होने से पहले डिबगर प्रोफ़ाइल को निष्पादित करने की व्यवस्था करें। उत्तेजित करता है
विस्तारित डिबगिंग मोड (विवरण देखें) extdebug विकल्प दुकान
नीचे निर्मित)।
--डंप-पो-स्ट्रिंग्स
के बराबर -D, लेकिन आउटपुट GNU में है gettext po (पोर्टेबल ऑब्जेक्ट) फ़ाइल
प्रारूप.
--डंप-स्ट्रिंग्स
के बराबर -D.
--मदद मानक आउटपुट पर उपयोग संदेश प्रदर्शित करें और सफलतापूर्वक बाहर निकलें।
--init-फ़ाइल पट्टिका
--rcfile पट्टिका
से आदेश निष्पादित करें पट्टिका सिस्टम वाइड इनिशियलाइज़ेशन फ़ाइल के बजाय
/etc/bash.bashrc और मानक व्यक्तिगत आरंभीकरण फ़ाइल ~ / .bashrc अगर
शेल इंटरैक्टिव है (देखें) मंगलाचरण नीचे).

--लॉग इन करें
के बराबर -l.

--संपादन नहीं
जीएनयू का प्रयोग न करें ReadLine शेल होने पर कमांड लाइन पढ़ने के लिए लाइब्रेरी
इंटरैक्टिव।

--नोप्रोफाइल
सिस्टम-व्यापी स्टार्टअप फ़ाइल को न पढ़ें / Etc / प्रोफ़ाइल या कोई व्यक्तिगत
आरंभीकरण फ़ाइलें ~ / .bash_profile, ~/.bash_loginया, ~ / .Profile। डिफ़ॉल्ट रूप से,
खूब जोर से पीटना जब इसे लॉगिन शेल के रूप में लागू किया जाता है तो यह इन फ़ाइलों को पढ़ता है (देखें)। मंगलाचरण नीचे).

--नॉर्क सिस्टम वाइड इनिशियलाइज़ेशन फ़ाइल को न पढ़ें और न ही निष्पादित करें /etc/bash.bashrc और
व्यक्तिगत आरंभीकरण फ़ाइल ~ / .bashrc यदि शेल इंटरैक्टिव है। यह
यदि शेल को इस रूप में लागू किया जाता है तो विकल्प डिफ़ॉल्ट रूप से चालू होता है sh.

--posix
का व्यवहार बदलें खूब जोर से पीटना जहां डिफ़ॉल्ट ऑपरेशन POSIX से भिन्न है
मानक से मेल खाने के लिए मानक (POSIX मोड)। देख देख ALSO संदर्भ के लिए नीचे
एक दस्तावेज़ जो बताता है कि पॉज़िक्स मोड बैश के व्यवहार को कैसे प्रभावित करता है।

--प्रतिबंधित
शेल प्रतिबंधित हो जाता है (देखें) वर्जित शेल नीचे).

--शब्दशः
के बराबर -v.

--संस्करण
इस उदाहरण के लिए संस्करण जानकारी दिखाएँ खूब जोर से पीटना मानक आउटपुट और निकास पर
सफलतापूर्वक।

बहस


यदि विकल्प प्रसंस्करण के बाद तर्क शेष रहते हैं, और न ही -c न ही -s विकल्प रहा है
आपूर्ति की गई, पहला तर्क शेल युक्त फ़ाइल का नाम माना जाता है
आदेश। अगर खूब जोर से पीटना इस तरह से आह्वान किया जाता है, $0 फ़ाइल के नाम पर सेट है, और
शेष तर्कों के लिए स्थितीय पैरामीटर सेट किए गए हैं। खूब जोर से पीटना पढ़ता है और निष्पादित करता है
इस फ़ाइल से आदेश देता है, फिर बाहर निकलता है। खूब जोर से पीटनाकी निकास स्थिति अंतिम की निकास स्थिति है
स्क्रिप्ट में कमांड निष्पादित। यदि कोई आदेश निष्पादित नहीं किया जाता है, तो निकास स्थिति 0 है
सबसे पहले फ़ाइल को वर्तमान निर्देशिका में खोलने का प्रयास किया जाता है, और, यदि कोई फ़ाइल नहीं मिलती है,
फिर शेल निर्देशिकाओं को खोजता है पथ स्क्रिप्ट के लिए।

मंगलाचरण


A लॉग इन खोल वह है जिसके तर्क का पहला अक्षर शून्य है -, या किसी के साथ शुरू हुआ
la --लॉग इन करें विकल्प.

An इंटरैक्टिव शेल एक गैर-विकल्प तर्क के बिना और बिना शुरू किया गया है -c विकल्प
जिसका मानक इनपुट और त्रुटि दोनों टर्मिनलों से जुड़े हुए हैं (जैसा कि निर्धारित किया गया है)।
इसट्टी(3)), या किसी ने शुरुआत की -i विकल्प. PS1 सेट है और $- शामिल i if खूब जोर से पीटना is
इंटरैक्टिव, एक शेल स्क्रिप्ट या स्टार्टअप फ़ाइल को इस स्थिति का परीक्षण करने की अनुमति देता है।

निम्नलिखित पैराग्राफ वर्णन करते हैं कि कैसे खूब जोर से पीटना अपनी स्टार्टअप फ़ाइलों को निष्पादित करता है। यदि इनमें से कोई भी
फ़ाइलें मौजूद हैं लेकिन पढ़ी नहीं जा सकतीं, खूब जोर से पीटना एक त्रुटि की रिपोर्ट करता है। फ़ाइल नामों में टिल्ड का विस्तार किया गया है
जैसा कि नीचे वर्णित है टिल्ड विस्तार में विस्तार अनुभाग।

. खूब जोर से पीटना एक इंटरैक्टिव लॉगिन शेल के रूप में, या एक गैर-इंटरैक्टिव शेल के रूप में लागू किया जाता है
--लॉग इन करें विकल्प, यह पहले फ़ाइल से कमांड पढ़ता है और निष्पादित करता है / Etc / प्रोफ़ाइल, कि अगर
फ़ाइल मौजूद। उस फाइल को पढ़ने के बाद वह ढूंढता है ~ / .bash_profile, ~/.bash_login, तथा
~ / .Profile, उस क्रम में, और मौजूद पहले वाले से कमांड पढ़ता है और निष्पादित करता है
और पठनीय है. --नोप्रोफाइल विकल्प का उपयोग तब किया जा सकता है जब शेल को रोकना शुरू हो जाता है
यह व्यवहार।

जब कोई लॉगिन शेल बाहर निकलता है, खूब जोर से पीटना फ़ाइल से कमांड पढ़ता है और निष्पादित करता है ~/.बैश_लॉगआउट,
अगर यह मौजूद है।

जब एक इंटरैक्टिव शेल जो लॉगिन शेल नहीं है, प्रारंभ किया जाता है, खूब जोर से पीटना पढ़ता है और निष्पादित करता है
से आदेश /etc/bash.bashrc और ~ / .bashrc, यदि ये फ़ाइलें मौजूद हैं। इस पर रोक लगाई जा सकती है
का उपयोग करके --नॉर्क विकल्प। --rcfile पट्टिका विकल्प बाध्य करेगा खूब जोर से पीटना पढ़ने और निष्पादित करने के लिए
से आदेश पट्टिका के बजाय /etc/bash.bashrc और ~ / .bashrc.

. खूब जोर से पीटना उदाहरण के लिए, शेल स्क्रिप्ट को चलाने के लिए इसे गैर-संवादात्मक रूप से प्रारंभ किया जाता है
चर BASH_ENV पर्यावरण में, यदि वह वहां प्रकट होता है, तो उसका मूल्य बढ़ाता है, और उपयोग करता है
पढ़ने और निष्पादित करने के लिए फ़ाइल के नाम के रूप में विस्तारित मान। खूब जोर से पीटना ऐसा व्यवहार करता है मानो
निम्नलिखित आदेश निष्पादित किया गया:
यदि [ -n "$BASH_ENV" ]; तब । "$BASH_ENV"; फाई
लेकिन का मूल्य पथ फ़ाइल नाम खोजने के लिए वेरिएबल का उपयोग नहीं किया जाता है।

If खूब जोर से पीटना नाम से पुकारा जाता है sh, यह ऐतिहासिक के स्टार्टअप व्यवहार की नकल करने की कोशिश करता है
के संस्करण sh यथासंभव बारीकी से, साथ ही POSIX मानक के अनुरूप भी।
जब एक इंटरैक्टिव लॉगिन शेल, या एक गैर-इंटरैक्टिव शेल के रूप में लागू किया जाता है --लॉग इन करें
विकल्प, यह सबसे पहले कमांड को पढ़ने और निष्पादित करने का प्रयास करता है / Etc / प्रोफ़ाइल और ~ / .Profile,
उस क्रम में। --नोप्रोफाइल इस व्यवहार को रोकने के लिए विकल्प का उपयोग किया जा सकता है। जब आह्वान किया गया
नाम के साथ एक इंटरैक्टिव शेल के रूप में sh, खूब जोर से पीटना वेरिएबल की तलाश करता है लि, इसका विस्तार करता है
मान यदि इसे परिभाषित किया गया है, और पढ़ने के लिए फ़ाइल के नाम के रूप में विस्तारित मान का उपयोग करता है
निष्पादित करना। चूंकि एक शेल के रूप में आह्वान किया गया sh से आदेशों को पढ़ने और निष्पादित करने का प्रयास नहीं करता है
कोई अन्य स्टार्टअप फ़ाइलें, --rcfile विकल्प का कोई प्रभाव नहीं पड़ता. एक गैर-संवादात्मक शेल
नाम से पुकारा गया sh किसी अन्य स्टार्टअप फ़ाइल को पढ़ने का प्रयास नहीं करता। जब आह्वान किया गया
as sh, खूब जोर से पीटना में प्रवेश करती है POSIX स्टार्टअप फ़ाइलें पढ़ने के बाद मोड।

. खूब जोर से पीटना में शुरू किया गया है POSIX मोड, जैसा कि --posix कमांड लाइन विकल्प, यह इस प्रकार है
स्टार्टअप फ़ाइलों के लिए POSIX मानक। इस मोड में, इंटरैक्टिव शेल का विस्तार होता है लि
वेरिएबल और कमांड को उस फ़ाइल से पढ़ा और निष्पादित किया जाता है जिसका नाम विस्तारित है
कीमत। कोई अन्य स्टार्टअप फ़ाइल नहीं पढ़ी जाती है.

खूब जोर से पीटना यह निर्धारित करने का प्रयास करता है कि इसे इसके मानक इनपुट के साथ कब चलाया जा रहा है
नेटवर्क कनेक्शन, जैसा कि आमतौर पर रिमोट शेल डेमॉन द्वारा निष्पादित किया जाता है rshdया,
सुरक्षित शैल डेमॉन sshd. अगर खूब जोर से पीटना यह निर्धारित करता है कि इसे इस तरह से चलाया जा रहा है, यह पढ़ता है
और से कमांड निष्पादित करता है ~ / .bashrc और ~ / .bashrc, यदि ये फ़ाइलें मौजूद हैं और पढ़ने योग्य हैं।
यदि इसे इस रूप में लागू किया जाए तो यह ऐसा नहीं करेगा sh--नॉर्क इसे रोकने के लिए विकल्प का उपयोग किया जा सकता है
व्यवहार, और --rcfile विकल्प का उपयोग किसी अन्य फ़ाइल को पढ़ने के लिए बाध्य करने के लिए किया जा सकता है, लेकिन
rshdsshd आम तौर पर उन विकल्पों के साथ शेल को लागू करें या उन्हें होने दें
निर्दिष्ट।

यदि शेल को प्रभावी उपयोगकर्ता (समूह) आईडी से प्रारंभ किया गया है तो यह वास्तविक उपयोगकर्ता के बराबर नहीं है
(समूह) आईडी, और -p विकल्प प्रदान नहीं किया गया है, कोई स्टार्टअप फ़ाइलें नहीं पढ़ी जाती हैं, शेल कार्य करता है
पर्यावरण से विरासत में नहीं मिले हैं, शेलॉप्स, बैशोप्ट्स, CDPATH, तथा ग्लोबिग्नोर
चर, यदि वे वातावरण में दिखाई देते हैं, तो उन्हें अनदेखा कर दिया जाता है, और प्रभावी उपयोगकर्ता आईडी है
वास्तविक उपयोगकर्ता आईडी पर सेट करें। यदि -p विकल्प मंगलाचरण, स्टार्टअप व्यवहार पर प्रदान किया जाता है
वही है, लेकिन प्रभावी उपयोगकर्ता आईडी रीसेट नहीं है।

परिभाषाएं


इस दस्तावेज़ के शेष भाग में निम्नलिखित परिभाषाओं का उपयोग किया गया है।
रिक्त एक स्थान या टैब.
शब्द शेल द्वारा वर्णों के एक अनुक्रम को एकल इकाई माना जाता है। ए के रूप में भी जाना जाता है
टोकन.
नाम A शब्द जिसमें केवल अल्फ़ान्यूमेरिक वर्ण और अंडरस्कोर और शुरुआत शामिल है
वर्णमाला वर्ण या अंडरस्कोर के साथ। इसे ए के रूप में भी जाना जाता है पहचानकर्ता.
मेटाकैरेक्टर
एक ऐसा चरित्र, जो उद्धृत न किए जाने पर शब्दों को अलग कर देता है। निम्न में से एक:
| & ; ( ) < > अंतरिक्ष टैब
नियंत्रण ऑपरेटर
A टोकन जो एक नियंत्रण कार्य करता है। यह निम्नलिखित प्रतीकों में से एक है:
|| & && ; ;; ( ) | |&

आरक्षित शब्द


आरिक्षत शब्द ऐसे शब्द हैं जिनका शैल के लिए विशेष अर्थ होता है। निम्नलिखित शब्द
गैर-उद्धृत होने पर आरक्षित के रूप में पहचाने जाते हैं और या तो एक साधारण कमांड का पहला शब्द
(देखें शेल व्याकरण नीचे) या ए का तीसरा शब्द मामला or एसटी आदेश:

! मामला कोप्रोक do किया elif अन्य esac fi एसटी समारोह if in चयन फिर जब तक जब { }
पहर [[ ]]

शेल व्याकरण


सरल कमानों
A सरल आदेश इसके बाद वैकल्पिक वैरिएबल असाइनमेंट का एक क्रम है रिक्त-
शब्दों और पुनर्निर्देशन को अलग किया गया और ए द्वारा समाप्त किया गया नियंत्रण ऑपरेटर. पहला शब्द
निष्पादित किए जाने वाले आदेश को निर्दिष्ट करता है, और तर्क शून्य के रूप में पारित किया जाता है। शेष शब्द
आह्वानित आदेश के तर्क के रूप में पारित किए जाते हैं।

ए का वापसी मूल्य सरल आदेश इसकी निकास स्थिति है, या 128+n यदि आदेश है
संकेत द्वारा समाप्त किया गया n.

पाइप लाइनें
A पाइपलाइन नियंत्रण ऑपरेटरों में से एक द्वारा अलग किए गए एक या अधिक कमांड का अनुक्रम है
| or |&. पाइपलाइन का प्रारूप है:

[पहर [-p]] [ ! ] आदेश [[||&] कमांड २१ ...]

का मानक आउटपुट आदेश के मानक इनपुट से एक पाइप के माध्यम से जुड़ा हुआ है कमांड २१.
यह कनेक्शन कमांड द्वारा निर्दिष्ट किसी भी पुनर्निर्देशन से पहले किया जाता है (देखें)।
पुनर्निर्देशन नीचे)। अगर |& प्रयोग किया जाता है, आदेशइसकी मानक त्रुटि, इसके मानक के अतिरिक्त
आउटपुट, से जुड़ा है कमांड २१पाइप के माध्यम से मानक इनपुट; यह इसके लिए आशुलिपि है
2> और 1 |. यह मानक त्रुटि का मानक आउटपुट पर अंतर्निहित पुनर्निर्देशन है
कमांड द्वारा निर्दिष्ट किसी भी पुनर्निर्देशन के बाद निष्पादित किया गया।

पाइपलाइन की वापसी स्थिति अंतिम कमांड की निकास स्थिति है, जब तक कि
पाइप फेल विकल्प सक्षम है. अगर पाइप फेल सक्षम है, पाइपलाइन की वापसी स्थिति है
गैर-शून्य स्थिति के साथ बाहर निकलने के लिए अंतिम (सबसे दाएं) कमांड का मान, या यदि सभी हो तो शून्य
आदेश सफलतापूर्वक बाहर निकलें। यदि आरक्षित शब्द ! एक पाइपलाइन से पहले, निकास स्थिति
जैसा कि ऊपर वर्णित है, उस पाइपलाइन का निकास स्थिति का तार्किक निषेध है। खोल
मान लौटाने से पहले पाइपलाइन में सभी आदेशों के समाप्त होने की प्रतीक्षा करता है।

अगर पहर आरक्षित शब्द एक पाइपलाइन, बीता हुआ उपयोगकर्ता और सिस्टम समय से पहले आता है
पाइपलाइन समाप्त होने पर इसके निष्पादन द्वारा उपभोग की सूचना दी जाती है। -p विकल्प
आउटपुट स्वरूप को POSIX द्वारा निर्दिष्ट प्रारूप में बदल देता है। जब खोल अंदर हो POSIX मोड, यह
पहचानता नहीं पहर यदि अगला टोकन `-' से शुरू होता है तो एक आरक्षित शब्द के रूप में।
समय स्वरूप वेरिएबल को एक प्रारूप स्ट्रिंग पर सेट किया जा सकता है जो समय निर्दिष्ट करता है
जानकारी प्रदर्शित की जानी चाहिए; का विवरण देखें समय स्वरूप के अंतर्गत खोल चर
नीचे.

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

पाइपलाइन में प्रत्येक कमांड को एक अलग प्रक्रिया के रूप में निष्पादित किया जाता है (यानी, एक सबशेल में)।

सूचियाँ
A सूची किसी एक ऑपरेटर द्वारा अलग की गई एक या अधिक पाइपलाइनों का अनुक्रम है ;, &, &&,
or ||, और वैकल्पिक रूप से किसी एक द्वारा समाप्त किया गया ;, &या, .

इन सूची संचालकों में से, && और || समान प्राथमिकता है, उसके बाद ; और &, जिन में हैं
समान प्राथमिकता.

एक या अधिक नई पंक्तियों का क्रम एक में दिखाई दे सकता है सूची परिसीमन करने के लिए अर्धविराम के बजाय
आदेश देता है।

यदि नियंत्रण ऑपरेटर द्वारा एक आदेश समाप्त कर दिया जाता है &, शेल कमांड को निष्पादित करता है
la पृष्ठभूमि एक उपकोश में. शेल कमांड ख़त्म होने का इंतज़ार नहीं करता, और
वापसी की स्थिति 0 है। कमांड को a से अलग किया गया है ; क्रमिक रूप से निष्पादित किए जाते हैं; खोल इंतज़ार करता है
प्रत्येक आदेश को बारी-बारी से समाप्त करने के लिए। वापसी की स्थिति अंतिम की निकास स्थिति है
आदेश निष्पादित.

AND और OR सूचियाँ द्वारा अलग की गई अधिक पाइपलाइनों में से एक का क्रम है && और || नियंत्रण
ऑपरेटर, क्रमशः। AND और OR सूचियाँ बाईं संबद्धता के साथ क्रियान्वित की जाती हैं। एक और
सूची का प्रपत्र है

कमांड २१ && कमांड २१

कमांड २१ निष्पादित किया जाता है यदि, और केवल यदि, कमांड २१ शून्य की निकास स्थिति लौटाता है।

एक OR सूची का प्रपत्र होता है

कमांड २१ || कमांड २१

कमांड २१ निष्पादित किया जाता है यदि और केवल यदि कमांड २१ एक गैर-शून्य निकास स्थिति लौटाता है। वापसी
AND और OR सूचियों की स्थिति सूची में निष्पादित अंतिम कमांड की निकास स्थिति है।

यौगिक कमानों
A यौगिक आदेश निम्नलिखित में से एक है. ज्यादातर मामलों में ए सूची एक आदेश में
विवरण को शेष कमांड से एक या अधिक न्यूलाइन द्वारा अलग किया जा सकता है, और हो सकता है
अर्धविराम के स्थान पर एक नई पंक्ति का पालन करें।

(सूची) सूची एक सबशेल वातावरण में निष्पादित किया जाता है (देखें)। कमान कार्यान्वयन वातावरण
नीचे)। परिवर्तनीय असाइनमेंट और अंतर्निहित कमांड जो शेल को प्रभावित करते हैं
आदेश पूरा होने के बाद वातावरण प्रभावी नहीं रहता। वापसी की स्थिति
की निकास स्थिति है सूची.

{ सूची; }
सूची इसे केवल वर्तमान शेल वातावरण में निष्पादित किया जाता है। सूची समाप्त किया जाना चाहिए
एक नई पंक्ति या अर्धविराम के साथ. इसे ए के नाम से जाना जाता है समूह आदेश. वापसी की स्थिति
की निकास स्थिति है सूची. ध्यान दें कि मेटाचैक्टर के विपरीत ( और ), { और }
रहे आरक्षित शब्द और वहां होना चाहिए जहां आरक्षित शब्द होने की अनुमति है
मान्यता प्राप्त। चूँकि वे शब्द विच्छेद का कारण नहीं बनते, इसलिए उन्हें अलग किया जाना चाहिए सूची
व्हाईटस्पेस या किसी अन्य शेल मेटाकैरेक्टर द्वारा।

((अभिव्यक्ति))
RSI अभिव्यक्ति नीचे वर्णित नियमों के अनुसार मूल्यांकन किया जाता है अंकगणित
मूल्यांकन. यदि अभिव्यक्ति का मान शून्य नहीं है, तो वापसी स्थिति 0 है;
अन्यथा वापसी की स्थिति 1 है। यह बिल्कुल बराबर है चलो "अभिव्यक्ति".

[[ अभिव्यक्ति ]]
सशर्त अभिव्यक्ति के मूल्यांकन के आधार पर 0 या 1 की स्थिति लौटाएँ
अभिव्यक्ति. अभिव्यक्तियाँ नीचे वर्णित प्राथमिकताओं से बनी हैं
सशर्त अभिव्यक्ति. शब्द विभाजन और पथनाम विस्तार नहीं किया जाता है
के बीच के शब्दों पर [[ और ]]; टिल्ड विस्तार, पैरामीटर और चर
विस्तार, अंकगणितीय विस्तार, कमांड प्रतिस्थापन, प्रक्रिया प्रतिस्थापन, और
उद्धरण हटाने का कार्य किया जाता है। सशर्त ऑपरेटर जैसे -f को उद्धृत नहीं किया जाना चाहिए
प्राथमिक के रूप में मान्यता दी जाए।

जब used के साथ प्रयोग किया जाता है [[, < और > ऑपरेटर वर्तमान का उपयोग करके शब्दकोषीय रूप से क्रमबद्ध करते हैं
स्थानीय.

का वर्णन देखें परीक्षण बिल्ट-इन कमांड (शेल बिल्ट-इन कमांड अनुभाग नीचे दिया गया है)।
मापदंडों का प्रबंधन (अर्थात लापता पैरामीटर)।

जब == और != ऑपरेटरों का उपयोग किया जाता है, ऑपरेटर के दाईं ओर स्ट्रिंग है
एक पैटर्न पर विचार किया गया और नीचे वर्णित नियमों के अनुसार मिलान किया गया पैटर्न
मिलान, मानो extglob शेल विकल्प सक्षम किया गया। = ऑपरेटर के बराबर है
==. यदि शैल विकल्प nocasematch सक्षम है, मैच बिना किसी परवाह के किया जाता है
वर्णमाला वर्णों का मामला. यदि स्ट्रिंग मेल खाती है तो रिटर्न मान 0 है (==) या
मिलता जुलता नहीं है (!=) पैटर्न, और 1 अन्यथा। पैटर्न के किसी भी भाग को उद्धृत किया जा सकता है
उद्धृत भाग को एक स्ट्रिंग के रूप में मिलान करने के लिए बाध्य करना।

एक अतिरिक्त बाइनरी ऑपरेटर, =~, उपलब्ध है, उसी प्राथमिकता के साथ == और !=.
जब इसका उपयोग किया जाता है, तो ऑपरेटर के दाईं ओर की स्ट्रिंग को विस्तारित नियमित माना जाता है
अभिव्यक्ति और तदनुसार मिलान (जैसा कि) regex(3)). यदि स्ट्रिंग है तो रिटर्न मान 0 है
पैटर्न से मेल खाता है, और 1 अन्यथा। यदि रेगुलर एक्सप्रेशन वाक्यात्मक रूप से है
गलत है, सशर्त अभिव्यक्ति का रिटर्न मान 2 है। यदि शेल विकल्प
nocasematch सक्षम है, तो मिलान वर्णमाला के मामले की परवाह किए बिना किया जाता है
पात्र। उद्धृत भाग को बाध्य करने के लिए पैटर्न के किसी भी भाग को उद्धृत किया जा सकता है
एक स्ट्रिंग के रूप में मिलान किया गया। नियमित अभिव्यक्ति में ब्रैकेट अभिव्यक्ति का इलाज किया जाना चाहिए
ध्यान से, क्योंकि सामान्य उद्धरण चिह्न कोष्ठक के बीच अपना अर्थ खो देते हैं। यदि
पैटर्न को एक शेल वैरिएबल में संग्रहित किया जाता है, जो वैरिएबल विस्तार को उद्धृत करते हुए संपूर्ण को बल देता है
एक स्ट्रिंग के रूप में मिलान किया जाने वाला पैटर्न। सबस्ट्रिंग कोष्ठक में दिए गए उपअभिव्यक्तियों से मेल खाते हैं
रेगुलर एक्सप्रेशन के भीतर ऐरे वेरिएबल में सहेजे जाते हैं बैश_रीमैच. तत्व
of बैश_रीमैच इंडेक्स 0 के साथ स्ट्रिंग का वह भाग है जो संपूर्ण रेगुलर से मेल खाता है
अभिव्यक्ति। का तत्व बैश_रीमैच सूचकांक के साथ n स्ट्रिंग का भाग है
का मिलान nवें कोष्ठक में उपअभिव्यक्ति।

घटते क्रम में सूचीबद्ध निम्नलिखित ऑपरेटरों का उपयोग करके अभिव्यक्तियों को जोड़ा जा सकता है
प्राथमिकता:

( अभिव्यक्ति )
का मान लौटाता है अभिव्यक्ति. इसका उपयोग सामान्य को ओवरराइड करने के लिए किया जा सकता है
ऑपरेटरों की प्राथमिकता.
! अभिव्यक्ति
सच है अगर अभिव्यक्ति गलत है।
अभिव्यक्ति1 && अभिव्यक्ति2
सच है अगर दोनों अभिव्यक्ति1 और अभिव्यक्ति2 सच हैं।
अभिव्यक्ति1 || अभिव्यक्ति2
यदि दोनों में से कोई भी सत्य है अभिव्यक्ति1 or अभिव्यक्ति2 सच हैं।

RSI && और || संचालक मूल्यांकन नहीं करते अभिव्यक्ति2 यदि का मान अभिव्यक्ति1 is
संपूर्ण सशर्त अभिव्यक्ति का रिटर्न मान निर्धारित करने के लिए पर्याप्त है।

एसटी नाम [[ in [ शब्द ... ] ] ; ] do सूची ; किया
निम्नलिखित शब्दों की सूची in वस्तुओं की एक सूची तैयार करते हुए विस्तारित किया जाता है।
परिवर्तनशील नाम इस सूची के प्रत्येक तत्व को बारी-बारी से सेट किया गया है, और सूची निष्पादित किया जाता है
हर बार। यदि in शब्द छोड़ा गया है, एसटी आदेश निष्पादित करता है सूची प्रत्येक के लिए एक बार
स्थितीय पैरामीटर जो सेट किया गया है (देखें पैरामीटर नीचे)। वापसी की स्थिति है
निष्पादित होने वाले अंतिम आदेश की निकास स्थिति। यदि वस्तुओं का विस्तार
निम्नलिखित in परिणाम एक खाली सूची में होता है, कोई आदेश निष्पादित नहीं होता है, और वापसी होती है
स्थिति 0 है।

एसटी (( pr1 ; pr2 ; pr3 )); do सूची ; किया
सबसे पहले, अंकगणितीय अभिव्यक्ति pr1 नियमानुसार मूल्यांकन किया जाता है
नीचे वर्णित है अंकगणित मूल्यांकन. अंकगणितीय अभिव्यक्ति pr2 is
तब तक बार-बार मूल्यांकन किया जाता है जब तक कि इसका मूल्यांकन शून्य न हो जाए। हर बार pr2 का मूल्यांकन करता है
एक गैर-शून्य मान, सूची निष्पादित किया जाता है और अंकगणितीय अभिव्यक्ति pr3 is
मूल्यांकन किया गया। यदि कोई अभिव्यक्ति छोड़ दी जाती है, तो यह ऐसा व्यवहार करता है मानो यह 1. का मूल्यांकन करता है
रिटर्न वैल्यू अंतिम कमांड की निकास स्थिति है सूची जिसे निष्पादित किया गया है, या
यदि कोई भी अभिव्यक्ति अमान्य है तो गलत।

चयन नाम [ in शब्द ]; do सूची ; किया
निम्नलिखित शब्दों की सूची in वस्तुओं की एक सूची तैयार करते हुए विस्तारित किया जाता है। के समुच्चय
विस्तारित शब्द मानक त्रुटि पर मुद्रित होते हैं, प्रत्येक के पहले एक संख्या होती है। यदि
in शब्द छोड़ दिया गया है, स्थितीय पैरामीटर मुद्रित हैं (देखें)। पैरामीटर नीचे).
RSI PS3 फिर प्रॉम्प्ट प्रदर्शित होता है और मानक इनपुट से एक पंक्ति पढ़ी जाती है। यदि
पंक्ति में प्रदर्शित शब्दों में से एक के अनुरूप एक संख्या होती है, फिर
के मूल्य नाम उस शब्द पर सेट है. यदि पंक्ति खाली है, तो शब्द और संकेत खाली हैं
पुनः प्रदर्शित. यदि EOF पढ़ा जाता है, तो कमांड पूरा हो जाता है। कोई अन्य मूल्य पढ़ें
का कारण बनता है नाम शून्य पर सेट किया जाना है. पढ़ी गई पंक्ति वेरिएबल में सहेजी गई है जवाब दें
सूची प्रत्येक चयन के बाद a तक निष्पादित किया जाता है तोड़ना आदेश निष्पादित किया जाता है. बाहर जाएं
इसकी स्थिति चयन निष्पादित अंतिम कमांड की निकास स्थिति है सूची, या शून्य
यदि कोई आदेश निष्पादित नहीं किया गया।

मामला शब्द in [[(] पैटर्न [ | पैटर्न ] ... ) सूची ;; ] ... esac
A मामला कमांड पहले विस्तारित होता है शब्द, और प्रत्येक के साथ इसका मिलान करने का प्रयास करता है पैटर्न in
पथनाम विस्तार के लिए समान मिलान नियमों का उपयोग करके मुड़ें (देखें)। पथ नाम
विस्तार नीचे)। NS शब्द टिल्ड विस्तार, पैरामीटर और का उपयोग करके विस्तारित किया जाता है
चर विस्तार, अंकगणितीय प्रतिस्थापन, आदेश प्रतिस्थापन, प्रक्रिया
प्रतिस्थापन और उद्धरण हटाना. प्रत्येक पैटर्न टिल्ड का उपयोग करके जांच का विस्तार किया जाता है
विस्तार, पैरामीटर और चर विस्तार, अंकगणितीय प्रतिस्थापन, आदेश
प्रतिस्थापन, और प्रक्रिया प्रतिस्थापन। यदि शैल विकल्प nocasematch is
सक्षम होने पर, मिलान वर्णमाला के मामले की परवाह किए बिना किया जाता है
पात्र। जब कोई मिलान पाया जाता है, तो संगत सूची निष्पादित किया जाता है। यदि ;;
ऑपरेटर का उपयोग किया जाता है, पहले पैटर्न के बाद किसी भी आगामी मिलान का प्रयास नहीं किया जाता है
मिलान। का उपयोग करते हुए ;& जगह की में ;; निष्पादन को जारी रखने का कारण बनता है सूची
पैटर्न के अगले सेट के साथ संबद्ध। का उपयोग करते हुए ;;& जगह की में ;; का कारण बनता है
शेल कथन में अगली पैटर्न सूची का परीक्षण करने के लिए, यदि कोई हो, और किसी को निष्पादित करें
जुड़े सूची एक सफल मैच पर. यदि कोई पैटर्न नहीं है तो निकास स्थिति शून्य है
मेल खाता है. अन्यथा, यह निष्पादित अंतिम कमांड की निकास स्थिति है सूची.

if सूची; फिर सूची; [ elif सूची; फिर सूची; ] ... [ अन्य सूची; ] fi
RSI if सूची निष्पादित किया जाता है। यदि इसकी निकास स्थिति शून्य है, तो फिर सूची निष्पादित किया जाता है।
अन्यथा, प्रत्येक elif सूची बदले में निष्पादित किया जाता है, और यदि इसकी निकास स्थिति शून्य है, तो
अनुरूप फिर सूची निष्पादित किया जाता है और आदेश पूरा हो जाता है। अन्यथा अन्य
सूची यदि मौजूद है तो निष्पादित किया जाता है। निकास स्थिति अंतिम की निकास स्थिति है
आदेश निष्पादित किया गया, या यदि कोई शर्त सत्य नहीं पाई गई तो शून्य।

जब सूची-1; do सूची-2; किया
जब तक सूची-1; do सूची-2; किया
RSI जब कमांड लगातार सूची निष्पादित करता है सूची-2 जब तक अंतिम आदेश है
सूची मैं सूची-1 शून्य की निकास स्थिति लौटाता है। जब तक आदेश समान है
को जब आदेश, सिवाय इसके कि परीक्षण अस्वीकृत है; सूची-2 तक निष्पादित किया जाता है
अंतिम आदेश के रूप में सूची-1 एक गैर-शून्य निकास स्थिति लौटाता है। की निकास स्थिति
la जब और जब तक कमांड निष्पादित अंतिम कमांड की निकास स्थिति है
सूची-2, या शून्य यदि कोई भी निष्पादित नहीं किया गया था।

सहप्रक्रियाएँ
A सहप्रक्रिया से पहले एक शेल कमांड है कोप्रोक आरक्षित शब्द. एक सहप्रक्रिया है
एक उपकोश में अतुल्यकालिक रूप से निष्पादित किया गया, जैसे कि कमांड को समाप्त कर दिया गया हो &
नियंत्रण ऑपरेटर, निष्पादन शेल और के बीच स्थापित दो-तरफ़ा पाइप के साथ
सहप्रक्रिया.

सहप्रक्रिया का प्रारूप है:

कोप्रोक [नाम] आदेश [रीडायरेक्ट]

यह नामक एक सहप्रक्रिया बनाता है नाम. अगर नाम आपूर्ति नहीं की गई है, डिफ़ॉल्ट नाम है COPROC.
नाम यदि आपूर्ति नहीं की जानी चाहिए आदेश एक सरल आदेश (ऊपर देखें); अन्यथा, यह है
सरल आदेश के पहले शब्द के रूप में व्याख्या की गई। जब सहप्रक्रिया निष्पादित होती है, तो
शेल एक ऐरे वेरिएबल बनाता है (देखें)। Arrays नीचे) नाम दिया गया है नाम के संदर्भ में
निष्पादन शेल. का मानक आउटपुट आदेश एक पाइप के माध्यम से एक फ़ाइल से जुड़ा हुआ है
निष्पादन शेल में डिस्क्रिप्टर, और उस फ़ाइल डिस्क्रिप्टर को सौंपा गया है नाम[0]. NS
का मानक इनपुट आदेश निष्पादन में एक पाइप के माध्यम से फ़ाइल डिस्क्रिप्टर से जुड़ा हुआ है
शेल, और वह फ़ाइल डिस्क्रिप्टर असाइन किया गया है नाम[1]. यह पाइप पहले से स्थापित है
कमांड द्वारा निर्दिष्ट कोई भी पुनर्निर्देशन (देखें पुनर्निर्देशन नीचे)। फ़ाइल डिस्क्रिप्टर
मानक शब्द का उपयोग करके शेल कमांड और पुनर्निर्देशन के लिए तर्क के रूप में उपयोग किया जा सकता है
विस्तार. फ़ाइल डिस्क्रिप्टर उपकोशों में उपलब्ध नहीं हैं। की प्रक्रिया आईडी
कोप्रोसेस को निष्पादित करने के लिए उत्पन्न शेल वेरिएबल के मान के रूप में उपलब्ध है नाम_पीआईडी.
RSI प्रतीक्षा कोप्रोसेस के समाप्त होने की प्रतीक्षा करने के लिए बिल्टिन कमांड का उपयोग किया जा सकता है।

चूंकि सहप्रक्रिया एक अतुल्यकालिक कमांड के रूप में बनाई गई है, इसलिए कोप्रोक हमेशा आदेश दें
सफलता लौटाता है. किसी सहप्रक्रिया की वापसी स्थिति निकास स्थिति है आदेश.

खोल समारोह परिभाषाएँ
शेल फ़ंक्शन एक ऑब्जेक्ट है जिसे एक साधारण कमांड की तरह कहा जाता है और एक कंपाउंड निष्पादित करता है
स्थितीय मापदंडों के एक नए सेट के साथ कमांड। शेल फ़ंक्शंस इस प्रकार घोषित किए गए हैं:

नाम () कंपाउंड-कमांड [पुनर्निर्देशन]
समारोह नाम [()] कंपाउंड-कमांड [पुनर्निर्देशन]
यह नामक फ़ंक्शन को परिभाषित करता है नाम. आरक्षित शब्द समारोह वैकल्पिक है। अगर
la समारोह आरक्षित शब्द दिया गया है, कोष्ठक वैकल्पिक हैं। परिवर्तन of
फ़ंक्शन कंपाउंड कमांड है कंपाउंड-कमांड (देखें यौगिक कमानों
ऊपर)। वह आदेश आमतौर पर एक होता है सूची { और } के बीच कमांड की, लेकिन कोई भी हो सकती है
आदेश नीचे सूचीबद्ध है यौगिक कमानों ऊपर। कंपाउंड-कमांड निष्पादित किया जाता है
जब कभी नाम एक साधारण कमांड के नाम के रूप में निर्दिष्ट किया गया है। में कब POSIX मोड,
नाम हो सकता है कि यह POSIX में से किसी एक का नाम न हो विशेष बिल्टिन्स. कोई पुनर्निर्देशन
(देखें पुनर्निर्देशन नीचे) जब कोई फ़ंक्शन परिभाषित किया जाता है तो निर्दिष्ट किया जाता है जब
फ़ंक्शन निष्पादित किया गया है. किसी फ़ंक्शन परिभाषा की निकास स्थिति तब तक शून्य होती है जब तक कि a
सिंटैक्स त्रुटि उत्पन्न होती है या समान नाम वाला रीडओनली फ़ंक्शन पहले से मौजूद है। कब
निष्पादित, किसी फ़ंक्शन की निकास स्थिति अंतिम कमांड की निकास स्थिति है
शरीर में निष्पादित. (देखना कार्य नीचे।)

रनिंग टाइम:


एक गैर-इंटरैक्टिव शेल में, या एक इंटरैक्टिव शेल जिसमें इंटरैक्टिव_टिप्पणियाँ
विकल्प दुकान बिल्टिन सक्षम है (देखें शेल अंतर्निहित कमानों नीचे), एक शब्द
इसके साथ शुरुआत # उस शब्द और उस पंक्ति के सभी शेष वर्णों को अनदेखा कर दिया जाता है।
के बिना एक इंटरैक्टिव शेल इंटरैक्टिव_टिप्पणियाँ सक्षम विकल्प अनुमति नहीं देता
टिप्पणियाँ। NS इंटरैक्टिव_टिप्पणियाँ इंटरैक्टिव शेल्स में विकल्प डिफ़ॉल्ट रूप से चालू होता है।

का हवाला देते हुए


का हवाला देते हुए इसका उपयोग शेल से कुछ वर्णों या शब्दों के विशेष अर्थ को हटाने के लिए किया जाता है।
रोकथाम के लिए, विशेष पात्रों के लिए विशेष उपचार को अक्षम करने के लिए उद्धरण का उपयोग किया जा सकता है
आरक्षित शब्दों को इस रूप में पहचाने जाने से, और पैरामीटर विस्तार को रोकने के लिए।

हर एक अक्षरों से परे ऊपर नीचे सूचीबद्ध है परिभाषाएं शंख का विशेष अर्थ है
और यदि इसे स्वयं का प्रतिनिधित्व करना है तो इसे उद्धृत किया जाना चाहिए।

जब कमांड इतिहास विस्तार सुविधाओं का उपयोग किया जा रहा हो (देखें)। इतिहास विस्तार
नीचे इतिहास विस्तार चरित्र, आमतौर पर !, इतिहास को रोकने के लिए उद्धृत किया जाना चाहिए
विस्तार।

तीन उद्धरण तंत्र हैं: बच चरित्र, सिंगल कोट्स, और डबल
उल्लेख। उद्धरण।

एक गैर-उद्धृत बैकस्लैश (\) है बच चरित्र. यह के शाब्दिक मूल्य को सुरक्षित रखता है
इसके बाद आने वाला अगला वर्ण, अपवाद के साथ . यदि एक \जोड़ा
प्रकट होता है, और बैकस्लैश स्वयं उद्धृत नहीं किया गया है \एक पंक्ति के रूप में माना जाता है
निरंतरता (अर्थात्, इसे इनपुट स्ट्रीम से हटा दिया जाता है और प्रभावी रूप से अनदेखा कर दिया जाता है)।

एकल उद्धरण चिह्नों में वर्ण संलग्न करने से प्रत्येक वर्ण का शाब्दिक मूल्य सुरक्षित रहता है
उद्धरण. एकल उद्धरणों के बीच एक भी उद्धरण नहीं आ सकता है, भले ही उसके पहले ए लगा हो
बैकस्लैश।

वर्णों को दोहरे उद्धरण चिन्हों में संलग्न करने से सभी वर्णों का शाब्दिक मूल्य सुरक्षित रहता है
उद्धरण, के अपवाद के साथ $, `, \, और, जब इतिहास विस्तार सक्षम किया जाता है, !
अक्षर $ और ` दोहरे उद्धरण चिह्नों के भीतर अपना विशेष अर्थ बनाए रखें। बैकस्लैश
निम्नलिखित वर्णों में से किसी एक का अनुसरण करने पर ही इसका विशेष अर्थ बरकरार रहता है: $, `,
", \या, . एक दोहरे उद्धरण को उसके पहले दोहरे उद्धरण चिह्नों के भीतर उद्धृत किया जा सकता है
बैकस्लैश के साथ. यदि सक्षम किया गया है, तो इतिहास विस्तार तब तक किया जाएगा जब तक कि कोई ! प्रदर्शित होने
डबल कोट्स में बैकस्लैश का उपयोग करके बच निकला है। से पहले का बैकस्लैश ! नहीं है
हटा दिया।

विशेष पैरामीटर * और @ दोहरे उद्धरण चिह्नों में विशेष अर्थ होता है (देखें)। पैरामीटर
नीचे).

रूप के शब्द $'स्ट्रिंग' विशेष व्यवहार किया जाता है। शब्द का विस्तार होता है स्ट्रिंग, साथ में
बैकस्लैश-एस्कैप्ड वर्णों को एएनएसआई सी मानक द्वारा निर्दिष्ट अनुसार प्रतिस्थापित किया गया। बैकस्लैश
भागने के क्रम, यदि मौजूद हैं, तो निम्नानुसार डिकोड किए गए हैं:
\a चेतावनी (घंटी)
\b बैकस्पेस
\e
\E एक भागने का पात्र
\f फ़ीड बनाएं
\n नई पंक्ति
\r कैरिज रिटर्न
\t क्षैतिज टैब
\v लंबवत टैब
\\ बैकस्लैश
\' एकल बोली
\" दोहरे उद्धरण
\NNN आठ-बिट वर्ण जिसका मान अष्टक मान है NNN (एक से तीन
अंक)
\xHH आठ-बिट वर्ण जिसका मान हेक्साडेसिमल मान है HH (एक अथवा दो
हेक्स अंक)
\uएचएचएचएच यूनिकोड (आईएसओ/आईईसी 10646) वर्ण जिसका मान हेक्साडेसिमल मान है
एचएचएचएच (एक से चार हेक्स अंक)
\Uहह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह
यूनिकोड (आईएसओ/आईईसी 10646) वर्ण जिसका मान हेक्साडेसिमल मान है
हह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह (एक से आठ हेक्स अंक)
\cx एक नियंत्रण-x चरित्र

विस्तारित परिणाम एकल-उद्धृत है, जैसे कि डॉलर चिह्न मौजूद ही नहीं था।

एक डबल-उद्धृत स्ट्रिंग एक डॉलर चिह्न से पहले ($"स्ट्रिंग") स्ट्रिंग का कारण बनेगा
वर्तमान स्थान के अनुसार अनुवादित। यदि वर्तमान स्थान है C or POSIX,
डॉलर चिह्न को नजरअंदाज कर दिया जाता है. यदि स्ट्रिंग का अनुवाद किया जाता है और प्रतिस्थापित किया जाता है, तो प्रतिस्थापन होता है
डबल-उद्धृत।

पैरामीटर


A प्राचल एक इकाई है जो मूल्यों को संग्रहीत करती है। यह एक हो सकता है नाम, एक संख्या, या इनमें से एक
विशेष वर्ण नीचे सूचीबद्ध हैं विशिष्ट पैरामीटर्स. एक परिवर्तनशील एक पैरामीटर है
ए द्वारा निरूपित नाम. एक वेरिएबल में एक है मूल्य और शून्य या अधिक विशेषताओं. गुण हैं
का उपयोग करके असाइन किया गया घोषित बिल्टिन कमांड (देखें) घोषित नीचे में शेल अंतर्निहित कमानों).

एक पैरामीटर सेट किया जाता है यदि उसे कोई मान निर्दिष्ट किया गया हो। शून्य स्ट्रिंग एक वैध मान है.
एक बार एक वेरिएबल सेट हो जाने पर, इसे केवल इसका उपयोग करके अनसेट किया जा सकता है सेट नहीं बिल्टिन कमांड (देखें) शेल
अंतर्निहित कमानों नीचे).

A परिवर्तनशील प्रपत्र के एक विवरण द्वारा सौंपा जा सकता है

नाम=[मूल्य]

If मूल्य नहीं दिया गया है, वेरिएबल को शून्य स्ट्रिंग असाइन किया गया है। सभी मानों टिल्ड से गुजरना
विस्तार, पैरामीटर और चर विस्तार, कमांड प्रतिस्थापन, अंकगणितीय विस्तार,
और उद्धरण हटाना (देखें) विस्तार नीचे)। यदि वेरिएबल के पास यह है पूर्णांक विशेषता सेट,
फिर मूल्य एक अंकगणितीय अभिव्यक्ति के रूप में मूल्यांकन किया जाता है, भले ही $((...)) विस्तार न हो
इस्तेमाल किया (देखें अंकगणित विस्तार नीचे)। शब्द विभाजन नहीं किया जाता है, के साथ
के अलावा "$@" जैसा कि नीचे बताया गया है विशिष्ट पैरामीटर्स. पथनाम विस्तार नहीं है
प्रदर्शन किया। असाइनमेंट कथन तर्क के रूप में भी प्रकट हो सकते हैं उर्फ, घोषित,
टाइपसेट, निर्यात, सिफ़ पढ़िये, तथा स्थानीय अंतर्निहित आदेश। में कब POSIX मोड, ये बिल्टिन
के एक या अधिक उदाहरणों के बाद एक कमांड में दिखाई दे सकता है आदेश बनाया और बनाए रखा
ये असाइनमेंट स्टेटमेंट गुण।

उस संदर्भ में जहां एक असाइनमेंट स्टेटमेंट शेल वैरिएबल के लिए एक मान निर्दिष्ट कर रहा है
ऐरे इंडेक्स, += ऑपरेटर का उपयोग वेरिएबल के पिछले हिस्से में जोड़ने या जोड़ने के लिए किया जा सकता है
कीमत। जब += को एक वेरिएबल पर लागू किया जाता है जिसके लिए पूर्णांक विशेषता सेट कर दी गई है,
मूल्य अंकगणितीय अभिव्यक्ति के रूप में मूल्यांकन किया जाता है और चर के वर्तमान मूल्य में जोड़ा जाता है,
जिसका मूल्यांकन भी किया जाता है. जब कंपाउंड का उपयोग करके किसी ऐरे वेरिएबल पर += लागू किया जाता है
असाइनमेंट (देखें) Arrays नीचे), वेरिएबल का मान अनसेट नहीं है (जैसा कि = का उपयोग करते समय होता है),
और नए मान सरणी में जोड़े जाते हैं जो सरणी के अधिकतम से एक से अधिक से शुरू होते हैं
सूचकांक (अनुक्रमित सरणियों के लिए) या एक सहयोगी सरणी में अतिरिक्त कुंजी-मूल्य जोड़े के रूप में जोड़ा गया।
जब एक स्ट्रिंग-मूल्य वाले चर पर लागू किया जाता है, मूल्य को विस्तारित किया जाता है और वेरिएबल के साथ जोड़ा जाता है
मूल्य.

एक वेरिएबल असाइन किया जा सकता है नामरेफ का उपयोग कर विशेषता -n विकल्प घोषित or
स्थानीय अंतर्निहित कमांड (विवरण देखें)। घोषित और स्थानीय नीचे) एक बनाने के लिए
नामरेफ, या किसी अन्य चर का संदर्भ। यह वेरिएबल्स में हेरफेर करने की अनुमति देता है
परोक्ष रूप से। जब भी नेमरेफ वैरिएबल को संदर्भित या असाइन किया जाता है, तो ऑपरेशन होता है
वास्तव में नेमरेफ वेरिएबल के मान द्वारा निर्दिष्ट वेरिएबल पर प्रदर्शन किया जाता है। एक नामरेफ
आमतौर पर शेल फ़ंक्शंस के भीतर एक वेरिएबल को संदर्भित करने के लिए उपयोग किया जाता है जिसका नाम एक के रूप में पारित किया जाता है
फ़ंक्शन के लिए तर्क. उदाहरण के लिए, यदि एक वेरिएबल नाम किसी शेल फ़ंक्शन को पास किया जाता है
इसके पहले तर्क के रूप में, चल रहा है
घोषित करें -n Ref=$1
फ़ंक्शन के अंदर एक नेमरेफ़ वैरिएबल बनाता है रेफरी जिसका मान पारित किया गया वेरिएबल नाम है
पहले तर्क के रूप में. के सन्दर्भ और असाइनमेंट रेफरी संदर्भ के रूप में माना जाता है और
वेरिएबल को असाइनमेंट जिसका नाम इस प्रकार पारित किया गया था $1. यदि नियंत्रण चर a एसटी
लूप में नेमरेफ विशेषता है, शब्दों की सूची शेल वेरिएबल्स की एक सूची हो सकती है, और ए
सूची में प्रत्येक शब्द के लिए नाम संदर्भ स्थापित किया जाएगा, बदले में, जब लूप होगा
निष्पादित। ऐरे वेरिएबल नहीं दिए जा सकते -n गुण। हालाँकि, nameref चर
ऐरे वेरिएबल्स और सबस्क्रिप्टेड ऐरे वेरिएबल्स को संदर्भित कर सकता है। Namerefs को अनसेट किया जा सकता है
का उपयोग -n विकल्प सेट नहीं निर्मित. अन्यथा, यदि सेट नहीं नाम के साथ निष्पादित किया जाता है
एक नेमरेफ वेरिएबल को एक तर्क के रूप में, नेमरेफ वेरिएबल द्वारा संदर्भित वेरिएबल होगा
अशांत हो जाओ.

अवस्था का पैरामीटर्स
A अवस्था का प्राचल एक पैरामीटर है जो एकल के अलावा एक या अधिक अंकों द्वारा दर्शाया जाता है
अंक 0. स्थितीय पैरामीटर शेल के तर्कों से निर्दिष्ट किए जाते हैं जब यह होता है
लागू किया गया है, और इसका उपयोग करके पुन: असाइन किया जा सकता है सेट अंतर्निहित आदेश. स्थितीय पैरामीटर हो सकते हैं
असाइनमेंट विवरण के साथ नहीं सौंपा जाएगा। स्थितीय पैरामीटर अस्थायी हैं
जब कोई शेल फ़ंक्शन निष्पादित होता है तो प्रतिस्थापित किया जाता है (देखें)। कार्य नीचे).

जब एक एकल अंक से अधिक वाले स्थितीय पैरामीटर का विस्तार किया जाता है, तो यह अवश्य होना चाहिए
ब्रेसिज़ में संलग्न (देखें) विस्तार नीचे).

विशिष्ट पैरामीटर्स
शेल कई मापदंडों को विशेष रूप से मानता है। इन मापदंडों को केवल संदर्भित किया जा सकता है;
उन्हें असाइनमेंट की अनुमति नहीं है.
* एक से शुरू करके, स्थितीय मापदंडों तक विस्तारित होता है। जब विस्तार नहीं है
दोहरे उद्धरण चिह्नों के भीतर, प्रत्येक स्थितीय पैरामीटर एक अलग शब्द में विस्तारित होता है। में
जिन संदर्भों में यह किया जाता है, वे शब्द आगे शब्द विभाजन के अधीन होते हैं
और पथनाम विस्तार. जब विस्तार दोहरे उद्धरण चिह्नों के भीतर होता है, तो इसका विस्तार होता है
पहले अक्षर द्वारा अलग किए गए प्रत्येक पैरामीटर के मान के साथ एक शब्द के लिए
का आईएफएस विशेष चर. वह है, "$*" के बराबर है "$1c$2c...", कहाँ पे c
के मान का पहला अक्षर है आईएफएस चर। अगर आईएफएस परेशान है,
पैरामीटर रिक्त स्थान द्वारा अलग किए गए हैं। अगर आईएफएस शून्य है, पैरामीटर जुड़े हुए हैं
विभाजकों के हस्तक्षेप के बिना.
@ एक से शुरू करके, स्थितीय मापदंडों तक विस्तारित होता है। जब विस्तार होता है
दोहरे उद्धरण चिह्नों के भीतर, प्रत्येक पैरामीटर एक अलग शब्द में विस्तारित होता है। वह है, "$@"है
के बराबर "$1""$2"...यदि दोहरे उद्धरण वाला विस्तार किसी शब्द के भीतर होता है,
पहले पैरामीटर का विस्तार इसके आरंभिक भाग के साथ जुड़ा हुआ है
मूल शब्द, और अंतिम पैरामीटर का विस्तार अंतिम भाग के साथ जुड़ जाता है
मूल शब्द का. जब कोई स्थितीय पैरामीटर न हों, "$@" तथा $@ विस्तार
कुछ भी नहीं (यानी, उन्हें हटा दिया जाता है)।
# दशमलव में स्थितीय मापदंडों की संख्या तक विस्तारित होता है।
? सबसे हाल ही में निष्पादित अग्रभूमि पाइपलाइन की निकास स्थिति तक विस्तारित।
- द्वारा आह्वान पर निर्दिष्ट वर्तमान विकल्प झंडों तक विस्तारित होता है सेट
बिल्टिन कमांड, या वे जो शेल द्वारा स्वयं सेट किए गए हैं (जैसे कि -i विकल्प)।
$ शेल की प्रक्रिया आईडी तक विस्तारित होता है। () उपकोश में, इसका विस्तार होता है
वर्तमान शेल की प्रक्रिया आईडी, उपशेल की नहीं।
! हाल ही में पृष्ठभूमि में रखे गए कार्य की प्रक्रिया आईडी का विस्तार होता है,
चाहे एसिंक्रोनस कमांड के रूप में निष्पादित किया गया हो या इसका उपयोग किया गया हो bg बिल्टिन (देखें नौकरी
नियंत्रण नीचे).
0 शेल या शेल स्क्रिप्ट के नाम तक विस्तारित होता है। यह शेल पर सेट है
आरंभीकरण. अगर खूब जोर से पीटना आदेशों की एक फ़ाइल के साथ लागू किया जाता है, $0 नाम पर सेट है
उस फ़ाइल का. अगर खूब जोर से पीटना से शुरू किया गया है -c विकल्प, फिर $0 पहले पर सेट है
निष्पादित होने वाली स्ट्रिंग के बाद तर्क, यदि कोई मौजूद है। अन्यथा, यह सेट है
आह्वान करने के लिए उपयोग किए गए फ़ाइल नाम के लिए खूब जोर से पीटना, जैसा कि तर्क शून्य द्वारा दिया गया है।
_ शेल स्टार्टअप पर, शेल या शेल को इनवॉइस करने के लिए उपयोग किए जाने वाले पूर्ण पथनाम पर सेट करें
स्क्रिप्ट को पर्यावरण या तर्क सूची में पारित के रूप में निष्पादित किया जा रहा है। बाद में,
विस्तार के बाद, पिछले कमांड के अंतिम तर्क तक विस्तारित होता है। भी सेट करें
निष्पादित और रखे गए प्रत्येक कमांड को लागू करने के लिए पूर्ण पथनाम का उपयोग किया जाता है
पर्यावरण उस कमांड को निर्यात किया गया। मेल चेक करते समय, यह पैरामीटर रखता है
वर्तमान में जाँच की जा रही मेल फ़ाइल का नाम।

खोल चर
निम्नलिखित चर शेल द्वारा निर्धारित किए गए हैं:

मार इस उदाहरण को लागू करने के लिए उपयोग किए गए पूर्ण फ़ाइल नाम तक विस्तारित होता है खूब जोर से पीटना.
बैशोप्ट्स
सक्षम शेल विकल्पों की एक कोलन-पृथक सूची। सूची में प्रत्येक शब्द मान्य है
के लिए तर्क -s विकल्प दुकान बिल्टिन कमांड (देखें) शेल अंतर्निहित कमानों
नीचे)। इसमें जो विकल्प दिख रहे हैं बैशोप्ट्स क्या वे इस प्रकार रिपोर्ट किए गए हैं on by दुकान. अगर
यह चर पर्यावरण में है जब खूब जोर से पीटना प्रारंभ होता है, प्रत्येक शेल विकल्प में
किसी भी स्टार्टअप फ़ाइल को पढ़ने से पहले सूची सक्षम कर दी जाएगी। यह वेरिएबल केवल पढ़ने योग्य है.
बाशपीड
वर्तमान की प्रक्रिया आईडी तक विस्तारित होता है खूब जोर से पीटना प्रक्रिया। ये अलग है $$ के अंतर्गत
कुछ परिस्थितियाँ, जैसे कि उपकोश जिनकी आवश्यकता नहीं है खूब जोर से पीटना पुनः होना-
आरंभ किया गया।
BASH_ALIASES
एक साहचर्य सरणी चर जिसके सदस्य आंतरिक सूची के अनुरूप होते हैं
द्वारा बनाए गए उपनाम उर्फ निर्मित. इस सरणी में जोड़े गए तत्व दिखाई देते हैं
उपनाम सूची; सरणी तत्वों को अनसेट करने से उपनामों को उपनाम से हटा दिया जाता है
सूची।
BASH_ARGC
एक सरणी वैरिएबल जिसका मान प्रत्येक फ्रेम में पैरामीटर की संख्या है
वर्तमान खूब जोर से पीटना निष्पादन कॉल स्टैक। वर्तमान में पैरामीटरों की संख्या
सबरूटीन (शेल फ़ंक्शन या स्क्रिप्ट के साथ निष्पादित . or स्रोत) के शीर्ष पर है
ढेर। जब एक सबरूटीन निष्पादित किया जाता है, तो पारित मापदंडों की संख्या होती है
पर धकेल दिया गया BASH_ARGC. खोल सेट हो जाता है BASH_ARGC केवल जब विस्तारित डिबगिंग में हो
मोड (का विवरण देखें) extdebug विकल्प दुकान नीचे निर्मित)
BASH_ARGV
एक सरणी चर जिसमें वर्तमान के सभी पैरामीटर शामिल हैं खूब जोर से पीटना निष्पादन
कॉल स्टैक। अंतिम सबरूटीन कॉल का अंतिम पैरामीटर सबसे ऊपर है
ढेर; प्रारंभिक कॉल का पहला पैरामीटर सबसे नीचे है। जब एक सबरूटीन
निष्पादित किया जाता है, आपूर्ति किए गए मापदंडों को आगे बढ़ाया जाता है BASH_ARGV. खोल सेट हो जाता है
BASH_ARGV केवल जब विस्तारित डिबगिंग मोड में हो (विवरण देखें)। extdebug
विकल्प दुकान नीचे निर्मित)
BASH_CMDS
एक सहयोगी सरणी चर जिसके सदस्य आंतरिक हैश तालिका से मेल खाते हैं
द्वारा बनाए गए आदेशों की हैश निर्मित. इस सरणी में जोड़े गए तत्व दिखाई देते हैं
हैश तालिका में; सरणी तत्वों को अनसेट करने से आदेश हटा दिए जाते हैं
हैश तालिका।
बाश_कमांड
कमांड वर्तमान में निष्पादित किया जा रहा है या निष्पादित होने वाला है, जब तक कि शेल न हो
ट्रैप के परिणाम के रूप में किसी कमांड को निष्पादित करना, इस स्थिति में यह कमांड है
ट्रैप के समय क्रियान्वित करना।
BASH_EXECUTION_STRING
के लिए आदेश तर्क -c आह्वान विकल्प.
BASH_LINENO
एक सरणी चर जिसके सदस्य स्रोत फ़ाइलों में पंक्ति संख्याएँ हैं जहाँ प्रत्येक
के संगत सदस्य FUNCNAME आह्वान किया गया था। ${BASH_LINENO[$i]} लाइन है
स्रोत फ़ाइल में संख्या (${BASH_SOURCE[$i+1]}) कहा पे ${FUNCNAME[$i]} बुलाया गया था
(या ${BASH_LINENO[$i-1]} यदि किसी अन्य शेल फ़ंक्शन के भीतर संदर्भित किया गया है)। उपयोग लिनेनो
वर्तमान लाइन नंबर प्राप्त करने के लिए.
बैश_रीमैच
एक सरणी चर जिसके सदस्यों को इसके द्वारा निर्दिष्ट किया जाता है =~ बाइनरी ऑपरेटर को [[
सशर्त आदेश. सूचकांक 0 वाला तत्व स्ट्रिंग का भाग है
संपूर्ण रेगुलर एक्सप्रेशन से मेल खाता हुआ। सूचकांक वाला तत्व n का भाग है
स्ट्रिंग मेल खाती है nवें कोष्ठक में उपअभिव्यक्ति। यह वेरिएबल पढ़ा जाता है-
केवल.
बाश_स्रोत
एक सरणी चर जिसके सदस्य स्रोत फ़ाइल नाम हैं जहां संबंधित हैं
में शेल फ़ंक्शन नाम FUNCNAME ऐरे वेरिएबल परिभाषित हैं। खोल
समारोह ${FUNCNAME[$i]} फ़ाइल में परिभाषित किया गया है ${BASH_SOURCE[$i]} और से बुलाया गया
${BASH_SOURCE[$i+1]}.
बाश_सबशेल
शेल होने पर प्रत्येक उपकोश या उपकोश वातावरण में एक से वृद्धि होती है
उस वातावरण में क्रियान्वित करना शुरू कर देता है। प्रारंभिक मान 0 है.
BASH_VERSINFO
एक केवल पढ़ने योग्य सरणी चर जिसके सदस्य इस उदाहरण के लिए संस्करण जानकारी रखते हैं
of खूब जोर से पीटना. सरणी सदस्यों को निर्दिष्ट मान इस प्रकार हैं:
बाश_वर्सइन्फो [0] प्रमुख संस्करण संख्या ( और ).
बाश_वर्सइन्फो [1] लघु संस्करण संख्या ( संस्करण).
बाश_वर्सइन्फो [2] पैच स्तर.
बाश_वर्सइन्फो [3] निर्मित संस्करण.
बाश_वर्सइन्फो [4] रिलीज़ स्थिति (जैसे, beta1).
बाश_वर्सइन्फो [5] के मूल्य मशीन प्रकार.
बाश_संस्करण
इस उदाहरण के संस्करण का वर्णन करने वाली एक स्ट्रिंग तक विस्तारित होता है खूब जोर से पीटना.
COMP_CWORD
में एक सूचकांक ${COMP_WORDS} वर्तमान कर्सर स्थिति वाले शब्द का।
यह वेरिएबल केवल प्रोग्रामयोग्य द्वारा लागू किए गए शेल फ़ंक्शंस में उपलब्ध है
पूर्णता सुविधाएं (देखें) निर्देशयोग्य समापन नीचे).
COMP_KEY
कुंजी (या कुंजी अनुक्रम की अंतिम कुंजी) का उपयोग वर्तमान पूर्णता का आह्वान करने के लिए किया जाता है
समारोह.
COMP_LINE
वर्तमान कमांड लाइन. यह वेरिएबल केवल शेल फ़ंक्शंस में उपलब्ध है और
प्रोग्रामयोग्य समापन सुविधाओं द्वारा लागू किए गए बाहरी आदेश (देखें)।
निर्देशयोग्य समापन नीचे).
COMP_POINT
धारा की शुरुआत के सापेक्ष वर्तमान कर्सर स्थिति का सूचकांक
आज्ञा। यदि वर्तमान कर्सर स्थिति वर्तमान कमांड के अंत में है, तो
इस वेरिएबल का मान बराबर है ${#COMP_LINE}. यह वेरिएबल केवल उपलब्ध है
शेल फ़ंक्शंस और प्रोग्रामयोग्य पूर्णता द्वारा लागू किए गए बाहरी कमांड में
सुविधाएं (देखें) निर्देशयोग्य समापन नीचे).
COMP_TYPE
प्रयास किए गए पूर्णता के प्रकार के अनुरूप एक पूर्णांक मान पर सेट करें
एक पूर्णता फ़ंक्शन को कॉल करने का कारण बना: टैब, सामान्य पूर्णता के लिए, ?के लिए,
क्रमिक टैब के बाद लिस्टिंग पूर्णताएँ, !, आंशिक पर विकल्पों को सूचीबद्ध करने के लिए
शब्द पूर्णता, @, यदि शब्द असंशोधित नहीं है, तो पूर्णताओं को सूचीबद्ध करने के लिए, या %के लिए,
मेनू पूर्णता. यह वेरिएबल केवल शेल फ़ंक्शंस और एक्सटर्नल में उपलब्ध है
प्रोग्रामयोग्य समापन सुविधाओं द्वारा लागू आदेश (देखें)। निर्देशयोग्य
समापन नीचे).
COMP_WORDब्रेक
वर्णों का वह सेट जो ReadLine लाइब्रेरी जब शब्द विभाजक के रूप में व्यवहार करती है
शब्द पूरा करना। अगर COMP_WORDब्रेक अशांत है, वह अपना विशेष खो देता है
गुण, भले ही इसे बाद में रीसेट कर दिया गया हो।
COMP_WORDS
एक सरणी चर (देखें Arrays नीचे) में अलग-अलग शब्द शामिल हैं
वर्तमान कमांड लाइन. पंक्ति को शब्दों में विभाजित किया गया है ReadLine इसे विभाजित कर दूंगा,
का उपयोग COMP_WORDब्रेक जैसा ऊपर वर्णित है। यह वेरिएबल केवल शेल में उपलब्ध है
प्रोग्रामयोग्य समापन सुविधाओं द्वारा लागू किए गए फ़ंक्शन (देखें)। निर्देशयोग्य
समापन नीचे).
COPROC एक सरणी चर (देखें Arrays नीचे) फ़ाइल डिस्क्रिप्टर को होल्ड करने के लिए बनाया गया है
एक अनाम सहप्रक्रिया से आउटपुट और इनपुट (देखें)। सहप्रक्रियाएँ ऊपर)।
डिरस्टैक
एक सरणी चर (देखें Arrays नीचे) की वर्तमान सामग्री युक्त
निर्देशिका ढेर. निर्देशिकाएँ स्टैक में उसी क्रम में दिखाई देती हैं जिस क्रम में वे प्रदर्शित होती हैं
द्वारा dirs निर्मित. इस सरणी चर के सदस्यों को असाइन करने का उपयोग किया जा सकता है
स्टैक में पहले से मौजूद निर्देशिकाओं को संशोधित करें, लेकिन pushd और popd बिल्टिन होना चाहिए
निर्देशिकाओं को जोड़ने और हटाने के लिए उपयोग किया जाता है। इस वेरिएबल का असाइनमेंट नहीं बदलेगा
वर्तमान निर्देशिका. अगर डिरस्टैक यदि यह अस्थिर है, तो यह अपने विशेष गुण भी खो देता है
यदि इसे बाद में रीसेट किया जाता है।
ईयूआईडी शेल स्टार्टअप पर प्रारंभ किए गए वर्तमान उपयोगकर्ता की प्रभावी उपयोगकर्ता आईडी तक विस्तारित होता है।
यह वेरिएबल केवल पढ़ने योग्य है.
FUNCNAME
एक ऐरे वेरिएबल जिसमें वर्तमान में मौजूद सभी शेल फ़ंक्शंस के नाम शामिल हैं
निष्पादन कॉल स्टैक। इंडेक्स 0 वाला तत्व वर्तमान में किसी का नाम है-
शेल फ़ंक्शन निष्पादित करना। सबसे निचला तत्व (उच्चतम सूचकांक वाला)
"मुख्य" है. यह वेरिएबल केवल तभी मौजूद होता है जब कोई शेल फ़ंक्शन निष्पादित हो रहा हो।
को असाइनमेंट FUNCNAME कोई प्रभाव नहीं पड़ता और त्रुटि स्थिति लौटाता है। अगर FUNCNAME is
अनसेट होने पर, यह अपने विशेष गुण खो देता है, भले ही इसे बाद में रीसेट कर दिया जाए।

इस वेरिएबल का उपयोग इसके साथ किया जा सकता है BASH_LINENO और बाश_स्रोत. का प्रत्येक तत्व
FUNCNAME में संगत तत्व हैं BASH_LINENO और बाश_स्रोत वर्णन करना
कॉल स्टैक। उदाहरण के लिए, ${FUNCNAME[$i]} फ़ाइल से बुलाया गया था
${BASH_SOURCE[$i+1]} लाइन नंबर पर ${BASH_LINENO[$i]}फोन करने वाले builtin
इस जानकारी का उपयोग करके वर्तमान कॉल स्टैक प्रदर्शित करता है।
समूह एक सरणी चर जिसमें उन समूहों की सूची होती है जिनमें से वर्तमान उपयोगकर्ता है
सदस्य। को असाइनमेंट समूह कोई प्रभाव नहीं पड़ता और त्रुटि स्थिति लौटाता है। अगर
समूह यदि इसे सेट नहीं किया जाता है, तो यह अपने विशेष गुण खो देता है, भले ही इसे बाद में रीसेट कर दिया जाए।
हिस्टसीएमडी
वर्तमान कमांड का इतिहास संख्या, या इतिहास सूची में सूचकांक। अगर
हिस्टसीएमडी अशांत है, यह अपने विशेष गुण खो देता है, भले ही बाद में ऐसा हो
रीसेट।
HOSTNAME
वर्तमान होस्ट के नाम पर स्वचालित रूप से सेट करें।
होस्टटाइप
स्वचालित रूप से एक स्ट्रिंग पर सेट करें जो विशिष्ट रूप से मशीन के प्रकार का वर्णन करती है
खूब जोर से पीटना क्रियान्वित कर रहा है. डिफ़ॉल्ट सिस्टम-निर्भर है.
लिनेनो हर बार जब इस पैरामीटर को संदर्भित किया जाता है, तो शेल एक दशमलव संख्या को प्रतिस्थापित कर देता है
एक स्क्रिप्ट के भीतर वर्तमान अनुक्रमिक पंक्ति संख्या (1 से शुरू) का प्रतिनिधित्व करना
या कार्य. जब कोई स्क्रिप्ट या फ़ंक्शन में नहीं होता है, तो प्रतिस्थापित मान नहीं होता है
सार्थक होने की गारंटी. अगर लिनेनो अस्थिर है, यह अपने विशेष गुण खो देता है,
भले ही इसे बाद में रीसेट कर दिया जाए।
मशीन प्रकार
स्वचालित रूप से एक स्ट्रिंग पर सेट करें जो पूरी तरह से सिस्टम प्रकार का वर्णन करता है जिस पर खूब जोर से पीटना is
मानक जीएनयू में निष्पादन सीपीयू-कंपनी-सिस्टम प्रारूप। डिफ़ॉल्ट सिस्टम है-
आश्रित।
मैपफ़ाइल
एक सरणी चर (देखें Arrays नीचे) द्वारा पढ़े गए पाठ को रखने के लिए बनाया गया है मैपफाइल
जब कोई वैरिएबल नाम प्रदान नहीं किया जाता है तो इसे बनाया जाता है।
ओल्डपीडब्ल्यूडी द्वारा निर्धारित पिछली कार्यशील निर्देशिका cd आदेश।
ऑप्टारजी द्वारा संसाधित अंतिम विकल्प तर्क का मान गेटअप बिल्टिन कमांड (देखें)
शेल अंतर्निहित कमानों नीचे).
ऑप्टिंड द्वारा संसाधित किए जाने वाले अगले तर्क का सूचकांक गेटअप बिल्टिन कमांड (देखें)
शेल अंतर्निहित कमानों नीचे).
ओएसटाइप स्वचालित रूप से एक स्ट्रिंग पर सेट करें जो ऑपरेटिंग सिस्टम का वर्णन करती है खूब जोर से पीटना is
क्रियान्वित करना। डिफ़ॉल्ट सिस्टम-निर्भर है.
पाइपस्टेटस
एक सरणी चर (देखें Arrays नीचे) जिसमें निकास स्थिति मानों की एक सूची शामिल है
सबसे हाल ही में निष्पादित अग्रभूमि पाइपलाइन में प्रक्रियाएं (जिसमें शामिल हो सकती हैं
केवल एक ही आदेश)।
पीपीआईडी शेल के पैरेंट की प्रक्रिया आईडी. यह वेरिएबल केवल पढ़ने योग्य है.
लोक निर्माण विभाग द्वारा निर्धारित वर्तमान कार्यशील निर्देशिका cd आदेश।
RANDOM हर बार जब इस पैरामीटर को संदर्भित किया जाता है, तो 0 और 32767 के बीच एक यादृच्छिक पूर्णांक होता है
उत्पन्न. यादृच्छिक संख्याओं के अनुक्रम को एक मान निर्दिष्ट करके प्रारंभ किया जा सकता है
सेवा मेरे RANDOM. अगर RANDOM अशांत है, तो वह अपने विशेष गुण खो देता है, भले ही वह हो
बाद में रीसेट करें।
READLINE_LINE
की सामग्री ReadLine लाइन बफ़र, "बाइंड -x" के साथ उपयोग के लिए (देखें)। शेल अंतर्निहित
कमानों नीचे).
READLINE_POINT
में सम्मिलन बिंदु की स्थिति ReadLine लाइन बफ़र, "बाइंड" के साथ उपयोग के लिए
-x" (देखें शेल अंतर्निहित कमानों नीचे).
जवाब दें द्वारा पढ़े गए इनपुट की लाइन पर सेट करें पढ़ना जब कोई तर्क न हो तो अंतर्निहित कमांड
आपूर्ति की।
सेकंड
हर बार जब इस पैरामीटर को संदर्भित किया जाता है, तो शेल के बाद से सेकंड की संख्या
आह्वान वापस कर दिया गया है. यदि कोई मान असाइन किया गया है सेकंड, मान लौटाया गया
बाद के संदर्भ असाइनमेंट के बाद से सेकंड की संख्या और मान हैं
सौंपा गया। अगर सेकंड अशांत है, तो वह अपने विशेष गुण खो देता है, भले ही वह हो
बाद में रीसेट करें।
शेलॉप्स
सक्षम शेल विकल्पों की एक कोलन-पृथक सूची। सूची में प्रत्येक शब्द मान्य है
के लिए तर्क -o विकल्प सेट बिल्टिन कमांड (देखें) शेल अंतर्निहित कमानों
नीचे)। इसमें जो विकल्प दिख रहे हैं शेलॉप्स क्या वे इस प्रकार रिपोर्ट किए गए हैं on by सेट -o. अगर
यह चर पर्यावरण में है जब खूब जोर से पीटना प्रारंभ होता है, प्रत्येक शेल विकल्प में
किसी भी स्टार्टअप फ़ाइल को पढ़ने से पहले सूची सक्षम कर दी जाएगी। यह वेरिएबल केवल पढ़ने योग्य है.
एसएचएलवीएल प्रत्येक बार एक उदाहरण में एक की वृद्धि की गई खूब जोर से पीटना शुरू हो गया।
यूआईडी शेल स्टार्टअप पर प्रारंभ किए गए वर्तमान उपयोगकर्ता की उपयोगकर्ता आईडी तक विस्तारित होता है। यह
परिवर्तनीय केवल पढ़ने योग्य है।

शेल द्वारा निम्नलिखित चर का उपयोग किया जाता है। कुछ मामलों में, खूब जोर से पीटना एक डिफ़ॉल्ट निर्दिष्ट करता है
एक चर का मान; ये मामले नीचे दिए गए हैं।

BASH_COMPAT
मान का उपयोग शेल के अनुकूलता स्तर को सेट करने के लिए किया जाता है। का विवरण देखें
la दुकान नीचे नीचे बनाया गया है शेल अंतर्निहित कमानों के विवरण के लिए
विभिन्न अनुकूलता स्तर और उनके प्रभाव। मान दशमलव संख्या हो सकता है
(उदाहरण के लिए, 4.2) या वांछित अनुकूलता के अनुरूप एक पूर्णांक (उदाहरण के लिए, 42)।
स्तर। अगर BASH_COMPAT अनसेट है या खाली स्ट्रिंग पर सेट है, संगतता स्तर
वर्तमान संस्करण के लिए डिफ़ॉल्ट पर सेट है। अगर BASH_COMPAT एक मान पर सेट है
यह मान्य संगतता स्तरों में से एक नहीं है, शेल एक त्रुटि प्रिंट करता है
संदेश और वर्तमान संस्करण के लिए संगतता स्तर को डिफ़ॉल्ट पर सेट करता है।
वैध संगतता स्तर स्वीकृत संगतता विकल्पों के अनुरूप हैं
la दुकान नीचे वर्णित अंतर्निहित (उदाहरण के लिए, compat42 इसका मतलब है कि 4.2 और 42 हैं
वैध मान)। वर्तमान संस्करण भी एक मान्य मान है.
BASH_ENV
यदि यह पैरामीटर कब सेट किया गया है खूब जोर से पीटना एक शेल स्क्रिप्ट निष्पादित कर रहा है, इसका मान है
एक फ़ाइल नाम के रूप में व्याख्या की गई है जिसमें शेल को प्रारंभ करने के लिए कमांड शामिल हैं
~ / .bashrc। का मूल्य BASH_ENV पैरामीटर विस्तार, आदेश के अधीन है
फ़ाइल नाम के रूप में व्याख्या किए जाने से पहले प्रतिस्थापन, और अंकगणितीय विस्तार।
पथ परिणामी फ़ाइल नाम की खोज के लिए इसका उपयोग नहीं किया जाता है।
बाश_XTRACEFD
यदि वैध फ़ाइल डिस्क्रिप्टर के अनुरूप पूर्णांक पर सेट किया गया है, खूब जोर से पीटना लिखूंगा
ट्रेस आउटपुट कब उत्पन्न हुआ सेट -x उस फ़ाइल डिस्क्रिप्टर के लिए सक्षम है। फ़ाइल
डिस्क्रिप्टर कब बंद होता है बाश_XTRACEFD सेट नहीं किया गया है या कोई नया मान निर्दिष्ट किया गया है.
अनसेटिंग बाश_XTRACEFD या इसे खाली स्ट्रिंग निर्दिष्ट करने से ट्रेस आउटपुट उत्पन्न होता है
मानक त्रुटि पर भेजा जाए। उस सेटिंग पर ध्यान दें बाश_XTRACEFD से 2 (मानक)
त्रुटि फ़ाइल डिस्क्रिप्टर) और फिर इसे अनसेट करने से मानक त्रुटि उत्पन्न होगी
बंद किया जा रहा है.
CDPATH के लिए खोज पथ cd आज्ञा। यह निर्देशिकाओं की एक कोलन-पृथक सूची है
जिसमें शेल द्वारा निर्दिष्ट गंतव्य निर्देशिकाओं की तलाश होती है cd आदेश।
एक नमूना मान है ".:~:/ usr".
CHILD_MAX
शेल को याद रखने के लिए बाहर निकले हुए चाइल्ड स्थिति मानों की संख्या निर्धारित करें। बैश होगा
इस मान को POSIX-अनिवार्य न्यूनतम से कम करने की अनुमति न दें, और एक है
अधिकतम मान (वर्तमान में 8192) इससे अधिक नहीं हो सकता। न्यूनतम मान है
सिस्टम पर निर्भर.
कॉलम
द्वारा उपयोग किया जाता है चयन मुद्रण करते समय टर्मिनल की चौड़ाई निर्धारित करने के लिए कंपाउंड कमांड
चयन सूचियाँ. स्वचालित रूप से सेट करें यदि checkwinsize विकल्प सक्षम है या एक में
ए की प्राप्ति पर इंटरैक्टिव शेल सिगविन्च.
अनुपालन करें
जिसमें से एक ऐरे वेरिएबल खूब जोर से पीटना द्वारा उत्पन्न संभावित पूर्णताओं को पढ़ता है
प्रोग्रामयोग्य समापन सुविधा द्वारा लागू किया गया शेल फ़ंक्शन (देखें)। निर्देशयोग्य
समापन नीचे)। प्रत्येक सरणी तत्व में एक संभावित पूर्णता होती है।
Emacs If खूब जोर से पीटना जब शेल मान से प्रारंभ होता है तो वातावरण में यह वेरिएबल पाता है
"t", यह मानता है कि शेल Emacs शेल बफ़र में चल रहा है और अक्षम हो जाता है
पंक्ति संपादन.
लि के समान BASH_ENV; जब शेल को POSIX मोड में लागू किया जाता है तो इसका उपयोग किया जाता है।
एफसीईडीआईटी के लिए डिफ़ॉल्ट संपादक fc बिल्टिन कमांड।
फ़िग्नोर
फ़ाइल नाम पूरा करते समय अनदेखा करने के लिए प्रत्ययों की एक कोलन-पृथक सूची
(देखें पढ़ने के लिए लाइन नीचे)। एक फ़ाइल नाम जिसका प्रत्यय प्रविष्टियों में से किसी एक से मेल खाता है
फ़िग्नोर मिलान किए गए फ़ाइल नामों की सूची से बाहर रखा गया है। एक नमूना मान ".o:~" है
(इस वेरिएबल को मान निर्दिष्ट करते समय उद्धरण की आवश्यकता होती है, जिसमें टिल्ड होते हैं)।
FUNCNEST
यदि 0 से अधिक संख्यात्मक मान पर सेट किया जाता है, तो अधिकतम फ़ंक्शन नेस्टिंग स्तर परिभाषित होता है।
फ़ंक्शन आमंत्रण जो इस नेस्टिंग स्तर से अधिक है, वर्तमान कमांड का कारण बनेगा
रद्द करे।
ग्लोबिग्नोर
अनदेखा किए जाने वाले फ़ाइल नामों के सेट को परिभाषित करने वाले पैटर्न की एक कोलन-पृथक सूची
पथनाम विस्तार. यदि फ़ाइल नाम पथनाम विस्तार पैटर्न से भी मेल खाता है
में से एक पैटर्न से मेल खाता है ग्लोबिग्नोर, इसे मैचों की सूची से हटा दिया गया है।
इतिहास नियंत्रण
इतिहास में कमांड कैसे सहेजे जाते हैं, इसे नियंत्रित करने वाले मानों की एक कोलन-पृथक सूची
सूची। यदि मूल्यों की सूची में शामिल हैं इग्नोरस्पेस, पंक्तियाँ जो a से शुरू होती हैं अंतरिक्ष
चरित्र इतिहास सूची में सहेजे नहीं गए हैं। का एक मान इग्नोरअप्स रेखाओं का कारण बनता है
पिछली इतिहास प्रविष्टि को सहेजे न जाने के लिए मिलान करना। का एक मान दोनों को अनदेखा करें is
के लिए आशुलिपि इग्नोरस्पेस और इग्नोरअप्स. का एक मूल्य मिटाया हुआ पिछले सभी का कारण बनता है
वर्तमान पंक्ति से मेल खाने वाली पंक्तियों को उससे पहले इतिहास सूची से हटा दिया जाएगा
लाइन सहेजी गई है. उपरोक्त सूची में मौजूद किसी भी मूल्य को नजरअंदाज नहीं किया जाता है। अगर इतिहास नियंत्रण is
अनसेट, या वैध मान शामिल नहीं है, शेल पार्सर द्वारा पढ़ी गई सभी पंक्तियाँ हैं
के मूल्य के अधीन, इतिहास सूची में सहेजा गया हिस्टिग्नोर. दूसरा और
मल्टी-लाइन कंपाउंड कमांड की अगली पंक्तियों का परीक्षण नहीं किया जाता है, और उन्हें इसमें जोड़ दिया जाता है
इतिहास के मूल्य की परवाह किए बिना इतिहास नियंत्रण.
हिस्टफाइल
फ़ाइल का नाम जिसमें कमांड इतिहास सहेजा गया है (देखें इतिहास नीचे)। NS
डिफ़ॉल्ट मान है ~ / .bash_history. यदि अनसेट किया गया है, तो कमांड इतिहास सहेजा नहीं जाता है
एक खोल बाहर निकलता है.
हिस्टफ़ाइलआकार
इतिहास फ़ाइल में निहित पंक्तियों की अधिकतम संख्या. जब यह वेरिएबल है
एक मान निर्दिष्ट किया गया है, यदि आवश्यक हो तो इतिहास फ़ाइल को छोटा कर दिया जाता है, ताकि उसमें और कुछ न हो
सबसे पुरानी प्रविष्टियों को हटाकर पंक्तियों की संख्या की तुलना करें। इतिहास फ़ाइल भी है
जब कोई शेल बाहर निकलता है तो इसे लिखने के बाद इस आकार में छोटा कर दिया जाता है। यदि मान 0 है, तो
इतिहास फ़ाइल को शून्य आकार में छोटा कर दिया गया है। गैर-संख्यात्मक मान और संख्यात्मक मान कम
शून्य से ट्रंकेशन को रोकता है। शेल डिफ़ॉल्ट मान को मान पर सेट करता है
हिस्टसाइज़ किसी भी स्टार्टअप फ़ाइल को पढ़ने के बाद।
हिस्टिग्नोर
कौन सी कमांड लाइनें होनी चाहिए, यह तय करने के लिए पैटर्न की एक कोलन-पृथक सूची का उपयोग किया जाता है
इतिहास सूची में सहेजा गया। प्रत्येक पैटर्न पंक्ति की शुरुआत में तय होता है
और पूरी पंक्ति से मेल खाना चाहिए (कोई अंतर्निहित नहीं)।*' संलग्न है)। प्रत्येक पैटर्न है
द्वारा निर्दिष्ट जांच के बाद लाइन के विरुद्ध परीक्षण किया गया इतिहास नियंत्रण लागू हैं। में
सामान्य शेल पैटर्न मिलान वर्णों के अलावा, `&' पिछले से मेल खाता है
इतिहास रेखा. `&' बैकस्लैश का उपयोग करके बचा जा सकता है; बैकस्लैश हटा दिया गया है
मैच का प्रयास करने से पहले. बहु-पंक्ति की दूसरी और बाद की पंक्तियाँ
कंपाउंड कमांड का परीक्षण नहीं किया जाता है, और इसकी परवाह किए बिना इतिहास में जोड़ दिया जाता है
के मूल्य हिस्टिग्नोर.
हिस्टसाइज़
कमांड इतिहास में याद रखने योग्य कमांडों की संख्या (देखें)। इतिहास नीचे)। अगर
मान 0 है, आदेश इतिहास सूची में सहेजे नहीं गए हैं। संख्यात्मक मान कम
इतिहास सूची में सहेजे जा रहे प्रत्येक कमांड में शून्य से अधिक परिणाम (कोई नहीं है)।
सीमा). शेल किसी भी स्टार्टअप फ़ाइल को पढ़ने के बाद डिफ़ॉल्ट मान को 500 पर सेट करता है।
इतिहास समय प्रारूप
यदि यह वेरिएबल सेट है और शून्य नहीं है, तो इसका मान एक प्रारूप स्ट्रिंग के रूप में उपयोग किया जाता है
स्ट्रैफ़टाइम(3) प्रदर्शित प्रत्येक इतिहास प्रविष्टि से जुड़े टाइम स्टैम्प को प्रिंट करना
la इतिहास निर्मित. यदि यह वेरिएबल सेट किया गया है, तो टाइम स्टैम्प को लिखा जाता है
इतिहास फ़ाइल ताकि उन्हें शेल सत्रों में संरक्षित किया जा सके। यह इतिहास का उपयोग करता है
टाइमस्टैम्प को अन्य इतिहास पंक्तियों से अलग करने के लिए चरित्र पर टिप्पणी करें।
होम वर्तमान उपयोगकर्ता की होम निर्देशिका; के लिए डिफ़ॉल्ट तर्क cd builtin
आज्ञा। इस चर के मान का उपयोग टिल्ड विस्तार करते समय भी किया जाता है।
होस्टफ़ाइल
के समान प्रारूप में फ़ाइल का नाम शामिल है / Etc / hosts जिसे पढ़ा जाना चाहिए
जब शेल को होस्टनाम पूरा करने की आवश्यकता होती है। संभावित होस्टनाम की सूची
शेल के चलने के दौरान पूर्णताएं बदली जा सकती हैं; अगली बार होस्टनाम
मान बदलने के बाद पूर्णता का प्रयास किया जाता है, खूब जोर से पीटना की सामग्री जोड़ता है
मौजूदा सूची में नई फ़ाइल. अगर होस्टफ़ाइल सेट है, लेकिन उसका कोई मूल्य नहीं है, या नहीं है
एक पठनीय फ़ाइल को नाम दें, खूब जोर से पीटना पढ़ने का प्रयास करता है / Etc / hosts की सूची प्राप्त करने हेतु
संभावित होस्टनाम पूर्णताएँ। कब होस्टफ़ाइल अनसेट है, होस्टनाम सूची है
साफ़ किया गया.
आईएफएस RSI आंतरिक क्षेत्र विभाजक जिसका उपयोग विस्तार के बाद शब्द विभाजन के लिए किया जाता है
के साथ पंक्तियों को शब्दों में विभाजित करें पढ़ना अंतर्निहित आदेश. डिफ़ॉल्ट मान है
`` ''.
उपेक्षा
एक प्राप्त होने पर एक इंटरैक्टिव शेल की कार्रवाई को नियंत्रित करता है EOF चरित्र के रूप में
एकमात्र इनपुट. यदि सेट किया गया है, तो मान लगातार की संख्या है EOF अक्षर जो
इसे पहले इनपुट लाइन पर पहले अक्षर के रूप में टाइप किया जाना चाहिए खूब जोर से पीटना बाहर निकलता है. यदि
वैरिएबल मौजूद है लेकिन उसका कोई संख्यात्मक मान नहीं है, या उसका कोई मान नहीं है, डिफ़ॉल्ट
मान 10 है. यदि यह मौजूद नहीं है, EOF शेल में इनपुट के अंत का प्रतीक है।
INPUTRC
के लिए फ़ाइल नाम ReadLine स्टार्टअप फ़ाइल, डिफ़ॉल्ट को ओवरराइड करती है ~ / .inputrc
(देखें पढ़ने के लिए लाइन नीचे).
लैंग विशेष रूप से चयनित नहीं की गई किसी भी श्रेणी के लिए स्थानीय श्रेणी निर्धारित करने के लिए उपयोग किया जाता है
एक वेरिएबल के साथ शुरू होता है एलसी_.
LC_ALL यह वेरिएबल के मान को ओवरराइड करता है लैंग और कोई अन्य एलसी_ चर निर्दिष्ट करना a
स्थानीय श्रेणी.
एलसी_COLLATE
यह चर परिणामों को क्रमबद्ध करते समय उपयोग किए जाने वाले मिलान क्रम को निर्धारित करता है
पथनाम विस्तार, और श्रेणी अभिव्यक्तियों, तुल्यता के व्यवहार को निर्धारित करता है
कक्षाएं, और पथनाम विस्तार और पैटर्न मिलान के भीतर अनुक्रमों का मिलान।
एलसी_CTYPE
यह चर पात्रों की व्याख्या और व्यवहार को निर्धारित करता है
पथनाम विस्तार और पैटर्न मिलान के भीतर चरित्र वर्ग।
एलसी_MESSAGES
यह वेरिएबल डबल-कोटेड स्ट्रिंग्स का अनुवाद करने के लिए उपयोग किए जाने वाले स्थान को निर्धारित करता है
a . से पहले $.
एलसी_NUMERIC
यह वेरिएबल संख्या स्वरूपण के लिए उपयोग की जाने वाली स्थानीय श्रेणी को निर्धारित करता है।
लाइनें द्वारा उपयोग किया जाता है चयन मुद्रण के लिए कॉलम की लंबाई निर्धारित करने के लिए कंपाउंड कमांड
चयन सूचियाँ. स्वचालित रूप से सेट करें यदि checkwinsize विकल्प सक्षम है या एक में
ए की प्राप्ति पर इंटरैक्टिव शेल सिगविन्च.
मेल यदि यह पैरामीटर किसी फ़ाइल या निर्देशिका नाम पर सेट है और मेलपथ परिवर्तनशील है
सेट नहीं, खूब जोर से पीटना उपयोगकर्ता को निर्दिष्ट फ़ाइल में मेल के आगमन की सूचना देता है या
मेलडिर-प्रारूप निर्देशिका।
मेल चेक
निर्दिष्ट करता है कि कितनी बार (सेकंड में) खूब जोर से पीटना मेल की जाँच करता है। डिफ़ॉल्ट साठ सेकण्ड है।
जब मेल की जांच करने का समय आता है, तो शेल प्राथमिक प्रदर्शित करने से पहले ऐसा करता है
तत्पर। यदि यह वेरिएबल अनसेट है, या ऐसे मान पर सेट है जो कोई बड़ी संख्या नहीं है
शून्य से अधिक या उसके बराबर, शेल मेल जाँच को अक्षम कर देता है।
मेलपथ
मेल के लिए जाँच की जाने वाली फ़ाइल नामों की एक कोलन-पृथक सूची। होने का संदेश
किसी विशेष फ़ाइल में मेल आने पर मुद्रित को अलग करके निर्दिष्ट किया जा सकता है
संदेश से फ़ाइल नाम `?' के साथ। जब संदेश के पाठ में उपयोग किया जाता है, $_
वर्तमान मेलफ़ाइल के नाम तक विस्तारित होता है। उदाहरण:
मेलपथ='/var/mail/bfox?"आपके पास मेल है":~/शेल-मेल?"$_ के पास मेल है!"'
खूब जोर से पीटना इस वेरिएबल के लिए एक डिफ़ॉल्ट मान प्रदान करता है, लेकिन उपयोगकर्ता मेल का स्थान
यह जिन फ़ाइलों का उपयोग करता है वे सिस्टम पर निर्भर हैं (उदाहरण के लिए, /var/मेल/$ उपयोगकर्ता).
ओप्टरर यदि मान 1 पर सेट किया जाए, खूब जोर से पीटना द्वारा उत्पन्न त्रुटि संदेश प्रदर्शित करता है गेटअप
बिल्टिन कमांड (देखें) शेल अंतर्निहित कमानों नीचे). ओप्टरर 1 से प्रारंभ किया गया है
हर बार शेल को लागू किया जाता है या शेल स्क्रिप्ट निष्पादित की जाती है।
पथ आदेशों के लिए खोज पथ. यह निर्देशिकाओं की एक कोलन-पृथक सूची है
शेल कमांड ढूँढता है (देखें)। कमान कार्यान्वयन नीचे)। एक शून्य-लंबाई (शून्य)
के मान में निर्देशिका का नाम पथ वर्तमान निर्देशिका को इंगित करता है. एक शून्य
निर्देशिका नाम दो आसन्न कोलन के रूप में, या प्रारंभिक या अनुगामी के रूप में प्रकट हो सकता है
बृहदांत्र. डिफ़ॉल्ट पथ सिस्टम-निर्भर है, और व्यवस्थापक द्वारा निर्धारित किया गया है
इंस्टॉल किए जाने खूब जोर से पीटना. एक सामान्य मान `` है/ Usr / स्थानीय / बिन:/ usr / स्थानीय / sbin:/ Usr / bin:
/ usr / sbin:/ bin:/ sbin''।
POSIXLY_CORRECT
यदि यह चर पर्यावरण में है तो कब खूब जोर से पीटना प्रारंभ होता है, खोल प्रवेश करता है POSIX
मोड स्टार्टअप फ़ाइलों को पढ़ने से पहले, जैसे कि --posix मंगलाचरण विकल्प था
आपूर्ति की गई. यदि इसे शेल के चलने के दौरान सेट किया गया है, खूब जोर से पीटना सक्षम बनाता है POSIX मोड, मानो
आदेश सेट -o POSIX निष्पादित किया गया था.
PROMPT_COMMAND
यदि सेट किया गया है, तो प्रत्येक प्राथमिक संकेत जारी करने से पहले मान को एक कमांड के रूप में निष्पादित किया जाता है।
PROMPT_DIRTRIM
यदि शून्य से अधिक संख्या पर सेट किया जाता है, तो मान का उपयोग पिछली संख्या के रूप में किया जाता है
विस्तार करते समय बनाए रखने के लिए निर्देशिका घटक \w और \W शीघ्र स्ट्रिंग बच जाती है
(देखें उत्साह नीचे)। हटाए गए वर्णों को इलिप्सिस से बदल दिया जाता है।
PS1 इस पैरामीटर का मान विस्तारित है (देखें उत्साह नीचे) और के रूप में उपयोग किया जाता है
प्राथमिक संकेत स्ट्रिंग. डिफ़ॉल्ट मान `` है\s-\v\$ ''।
PS2 इस पैरामीटर का मान इस प्रकार विस्तारित किया गया है PS1 और द्वितीयक के रूप में उपयोग किया जाता है
शीघ्र स्ट्रिंग. डिफ़ॉल्ट `` है> ''।
PS3 इस पैरामीटर का मान इसके लिए संकेत के रूप में उपयोग किया जाता है चयन आदेश (देखें शेल
व्याकरण ऊपर)।
PS4 इस पैरामीटर का मान इस प्रकार विस्तारित किया गया है PS1 और मान पहले मुद्रित होता है
प्रत्येक आदेश खूब जोर से पीटना निष्पादन ट्रेस के दौरान प्रदर्शित होता है। का पहला किरदार PS4
के कई स्तरों को इंगित करने के लिए, आवश्यकतानुसार, कई बार दोहराया जाता है
अप्रत्यक्ष. डिफ़ॉल्ट `` है+ ''।
शेल शेल का पूरा पथनाम इस पर्यावरण चर में रखा गया है। यदि यह नहीं है
शेल प्रारंभ होने पर सेट करें, खूब जोर से पीटना इसे वर्तमान का पूरा पथनाम निर्दिष्ट करता है
उपयोगकर्ता का लॉगिन शेल.
समय स्वरूप
इस पैरामीटर का मान एक प्रारूप स्ट्रिंग के रूप में उपयोग किया जाता है जो समय निर्दिष्ट करता है
पाइपलाइनों के लिए जानकारी पहले से जुड़ी हुई है पहर आरक्षित शब्द प्रदर्शित किया जाना चाहिए।
RSI % चरित्र एक पलायन क्रम प्रस्तुत करता है जिसे समय मान तक विस्तारित किया जाता है
अन्य सूचना। पलायन क्रम और उनके अर्थ इस प्रकार हैं;
ब्रेसिज़ वैकल्पिक भागों को दर्शाते हैं।
%% एक शाब्दिक %.
%[p][एल]आर बीता हुआ समय सेकंड में.
%[p][एल]यू उपयोगकर्ता मोड में बिताए गए सीपीयू सेकंड की संख्या।
%[p][एल]एस सिस्टम मोड में बिताए गए सीपीयू सेकंड की संख्या।
%P सीपीयू प्रतिशत, (%U + %S) / %R के रूप में गणना की जाती है।

वैकल्पिक p को निर्दिष्ट करने वाला एक अंक है शुद्धता, भिन्नात्मक अंकों की संख्या
दशमलव बिंदु के बाद. 0 के मान के कारण कोई दशमलव बिंदु या भिन्न नहीं होता है
आउटपुट. दशमलव बिंदु के बाद अधिकतम तीन स्थानों पर निर्दिष्ट किया जा सकता है; के मान p
3 से अधिक को 3 में बदल दिया जाता है। यदि p निर्दिष्ट नहीं है, मान 3 का उपयोग किया जाता है।

वैकल्पिक l प्रपत्र का मिनट सहित एक लंबा प्रारूप निर्दिष्ट करता है MMmSS.FFs.
के मूल्य p यह निर्धारित करता है कि भिन्न शामिल है या नहीं।

यदि यह वेरिएबल सेट नहीं है, खूब जोर से पीटना ऐसा कार्य करता है मानो उसका कोई मूल्य हो
$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'. यदि मान शून्य है, तो कोई समय नहीं
जानकारी प्रदर्शित की जाती है. प्रारूप स्ट्रिंग होने पर एक अनुगामी नई पंक्ति जोड़ी जाती है
का प्रदर्शन किया।
TMOUT यदि शून्य से अधिक मान पर सेट किया जाए, TMOUT के लिए डिफ़ॉल्ट टाइमआउट के रूप में माना जाता है
la पढ़ना निर्मित. चयन यदि इनपुट बाद में नहीं आता है तो कमांड समाप्त हो जाती है
TMOUT सेकंड जब इनपुट किसी टर्मिनल से आ रहा हो। एक इंटरैक्टिव शेल में,
मान की व्याख्या इनपुट की एक पंक्ति के लिए प्रतीक्षा करने के लिए सेकंड की संख्या के रूप में की जाती है
प्राथमिक संकेत जारी करना। खूब जोर से पीटना की संख्या की प्रतीक्षा करने के बाद समाप्त हो जाता है
यदि इनपुट की पूरी लाइन नहीं आती है तो सेकंड।
टीएमपीडीआईआर अगर सेट हो, खूब जोर से पीटना इसके मान का उपयोग उस निर्देशिका के नाम के रूप में करता है जिसमें खूब जोर से पीटना बनाता है
शेल के उपयोग के लिए अस्थायी फ़ाइलें।
स्वतः_फिर से शुरू करें
यह वेरिएबल नियंत्रित करता है कि शेल उपयोगकर्ता और कार्य नियंत्रण के साथ कैसे इंटरैक्ट करता है। अगर
यह वेरिएबल सेट है, पुनर्निर्देशन के बिना एकल शब्द सरल कमांड का इलाज किया जाता है
मौजूदा रुकी हुई नौकरी को फिर से शुरू करने के लिए उम्मीदवारों के रूप में। कोई अस्पष्टता नहीं है
अनुमत; यदि टाइप की गई स्ट्रिंग से शुरू होने वाले एक से अधिक कार्य हैं, तो कार्य
सबसे हाल ही में एक्सेस किया गया चयनित है. नाम इस सन्दर्भ में रुका हुआ काम है
इसे प्रारंभ करने के लिए कमांड लाइन का उपयोग किया गया। यदि मान पर सेट किया गया है सटीक, आपूर्ति की गई स्ट्रिंग
रुके हुए कार्य के नाम से बिल्कुल मेल खाना चाहिए; यदि सेट किया गया है सबस्ट्रिंग, डोर
आपूर्ति की गई चीज़ को रुके हुए कार्य के नाम की एक सबस्ट्रिंग से मेल खाना चाहिए। सबस्ट्रिंग
वैल्यू के अनुरूप कार्यक्षमता प्रदान करता है %? कार्य पहचानकर्ता (देखें) नौकरी नियंत्रण
नीचे)। यदि किसी अन्य मान पर सेट किया गया है, तो आपूर्ति की गई स्ट्रिंग का उपसर्ग होना चाहिए
नौकरी का नाम रोक दिया; यह के अनुरूप कार्यक्षमता प्रदान करता है %स्ट्रिंग काम
पहचानकर्ता।
हिस्टचार्स
दो या तीन वर्ण जो इतिहास के विस्तार और टोकनीकरण को नियंत्रित करते हैं (देखें)।
इतिहास विस्तार नीचे)। पहला अक्षर है इतिहास विस्तार चरित्र,
वह चरित्र जो इतिहास के विस्तार की शुरुआत का संकेत देता है, सामान्यतः `!'.
दूसरा पात्र है त्वरित प्रतिस्थापन अक्षर, जिसका प्रयोग आशुलिपि के रूप में किया जाता है
दर्ज की गई पिछली कमांड को फिर से चलाने के लिए, एक स्ट्रिंग को दूसरे से प्रतिस्थापित करना
आदेश। डिफ़ॉल्ट ` है^'. वैकल्पिक तीसरा वर्ण वर्ण है
जो इंगित करता है कि पहली पंक्ति के रूप में पाए जाने पर पंक्ति का शेष भाग एक टिप्पणी है
किसी शब्द का चरित्र, सामान्यतः `#'. इतिहास टिप्पणी चरित्र इतिहास का कारण बनता है
पंक्ति में शेष शब्दों के लिए प्रतिस्थापन को छोड़ दिया जाना चाहिए। यदि ऐसा नहीं होता
आवश्यक रूप से शेल पार्सर को शेष पंक्ति को एक टिप्पणी के रूप में मानने का कारण बनता है।

Arrays
खूब जोर से पीटना एक-आयामी अनुक्रमित और सहयोगी सरणी चर प्रदान करता है। कोई भी परिवर्तनशील हो सकता है
अनुक्रमित सरणी के रूप में उपयोग किया जाए; घोषित बिल्टिन स्पष्ट रूप से एक सरणी घोषित करेगा। वहाँ
किसी सरणी के आकार पर कोई अधिकतम सीमा नहीं है, न ही सदस्यों को अनुक्रमित करने की कोई आवश्यकता है
या सन्निहित रूप से सौंपा गया। अनुक्रमित सरणियों को पूर्णांकों (सहित) का उपयोग करके संदर्भित किया जाता है
अंकगणितीय अभिव्यक्तियाँ) और शून्य-आधारित हैं; साहचर्य सरणियों का उपयोग करके संदर्भित किया जाता है
मनमाना तार. जब तक अन्यथा उल्लेख न किया गया हो, अनुक्रमित सरणी सूचकांक गैर-नकारात्मक होने चाहिए
पूर्णांक।

यदि सिंटैक्स का उपयोग करने के लिए कोई वेरिएबल असाइन किया गया है तो एक अनुक्रमित सरणी स्वचालित रूप से बनाई जाती है
नाम[सबस्क्रिप्ट]=मूल्यसबस्क्रिप्ट इसे एक अंकगणितीय अभिव्यक्ति के रूप में माना जाना चाहिए
किसी संख्या का मूल्यांकन करें. अनुक्रमित सरणी को स्पष्ट रूप से घोषित करने के लिए, उपयोग करें घोषित -a नाम (देखें
शेल अंतर्निहित कमानों नीचे). घोषित -a नाम[सबस्क्रिप्ट] स्वीकार भी किया जाता है; सबस्क्रिप्ट
नजरअंदाज कर दिया है।

सहयोगी सारणी का उपयोग करके बनाया जाता है घोषित -A नाम.

का उपयोग करके किसी सरणी चर के लिए विशेषताएँ निर्दिष्ट की जा सकती हैं घोषित और सिफ़ पढ़िये बिल्टिंस.
प्रत्येक विशेषता किसी सरणी के सभी सदस्यों पर लागू होती है।

प्रपत्र के मिश्रित असाइनमेंट का उपयोग करके सारणियाँ निर्दिष्ट की जाती हैं नाम=(मूल्य1 ... कीमतn),
जहां प्रत्येक मूल्य रूप का है [सबस्क्रिप्ट]=स्ट्रिंग. अनुक्रमित सरणी असाइनमेंट नहीं हैं
लेकिन कुछ भी चाहिए स्ट्रिंग. अनुक्रमित सरणियों को निर्दिष्ट करते समय, यदि वैकल्पिक कोष्ठक
और सबस्क्रिप्ट की आपूर्ति की जाती है, उस सूचकांक को सौंपा गया है; अन्यथा तत्व का सूचकांक
असाइन किया गया कथन प्लस वन द्वारा निर्दिष्ट अंतिम सूचकांक है। अनुक्रमण शुरू होता है
शून्य।

किसी एसोसिएटिव ऐरे को असाइन करते समय, सबस्क्रिप्ट की आवश्यकता होती है।

यह वाक्यविन्यास भी स्वीकृत है घोषित निर्मित. व्यक्तिगत सरणी तत्व हो सकते हैं
का उपयोग करने के लिए सौंपा गया है नाम[सबस्क्रिप्ट]=मूल्य वाक्यविन्यास ऊपर प्रस्तुत किया गया है। किसी को असाइन करते समय
अनुक्रमित सरणी, यदि नाम एक ऋणात्मक संख्या द्वारा अभिलिखित है, उस संख्या की व्याख्या इस प्रकार की जाती है
के अधिकतम सूचकांक से एक अधिक के सापेक्ष नाम, इसलिए नकारात्मक सूचकांक वापस गिने जाते हैं
सरणी के अंत से, और -1 का सूचकांक अंतिम तत्व को संदर्भित करता है।

किसी सरणी के किसी भी तत्व को ${ का उपयोग करके संदर्भित किया जा सकता हैनाम[सबस्क्रिप्ट]}. ब्रेसिज़ हैं
पथनाम विस्तार के साथ टकराव से बचने के लिए आवश्यक है। अगर सबस्क्रिप्ट is @ or *, शब्द
के सभी सदस्यों तक विस्तारित है नाम. ये उपस्क्रिप्ट केवल तभी भिन्न होती हैं जब शब्द भीतर प्रकट होता है
डबल उद्धरण। यदि शब्द को दो बार उद्धृत किया गया है, तो ${नाम[*]} के साथ एक शब्द तक विस्तार होता है
प्रत्येक सरणी सदस्य का मान पहले अक्षर से अलग किया गया आईएफएस विशेष चर,
और ${नाम[@]} प्रत्येक तत्व का विस्तार करता है नाम एक अलग शब्द के लिए. जब कोई सारणी न हो
सदस्य, ${नाम[@]} का विस्तार शून्य तक है। यदि दोहरे उद्धरण वाला विस्तार a के भीतर होता है
शब्द, पहले पैरामीटर का विस्तार आरंभिक भाग के साथ जुड़ जाता है
मूल शब्द, और अंतिम पैरामीटर का विस्तार अंतिम भाग के साथ जुड़ जाता है
मूल शब्द. यह विशेष मापदंडों के विस्तार के अनुरूप है * और @ (देखें
विशिष्ट पैरामीटर्स ऊपर)। ${#नाम[सबस्क्रिप्ट]} की लंबाई तक फैलता है
${नाम[सबस्क्रिप्ट]}. अगर सबस्क्रिप्ट is * or @, विस्तार तत्वों की संख्या है
सरणी. सबस्क्रिप्ट के बिना किसी ऐरे वेरिएबल को संदर्भित करना संदर्भ के बराबर है
0 की सबस्क्रिप्ट वाली सरणी। यदि सबस्क्रिप्ट के एक तत्व को संदर्भित करने के लिए उपयोग किया जाता है
अनुक्रमित सरणी शून्य से कम संख्या का मूल्यांकन करती है, इसकी व्याख्या एक के सापेक्ष की जाती है
सरणी के अधिकतम सूचकांक से अधिक, इसलिए नकारात्मक सूचकांक अंत से वापस गिने जाते हैं
सरणी का, और -1 का सूचकांक अंतिम तत्व को संदर्भित करता है।

यदि किसी सबस्क्रिप्ट को एक मान निर्दिष्ट किया गया है तो एक सरणी चर को सेट माना जाता है। शून्य
स्ट्रिंग एक वैध मान है.

किसी सरणी की कुंजी (सूचकांक) के साथ-साथ मान भी प्राप्त करना संभव है।
${!नाम[@]} और ${!नाम[*]} सरणी चर में निर्दिष्ट सूचकांकों तक विस्तार करें नाम
दोहरे उद्धरण चिह्नों में उपचार विशेष मापदंडों के विस्तार के समान है @
और * दोहरे उद्धरण चिह्नों के भीतर.

RSI सेट नहीं बिल्टिन का उपयोग सरणियों को नष्ट करने के लिए किया जाता है। सेट नहीं नाम[सबस्क्रिप्ट] सरणी को नष्ट कर देता है
सूचकांक पर तत्व सबस्क्रिप्ट. अनुक्रमित सरणियों की नकारात्मक सबस्क्रिप्ट की व्याख्या इस प्रकार की जाती है
ऊपर वर्णित है। पथनाम के कारण होने वाले अवांछित दुष्प्रभावों से बचने के लिए सावधानी बरतनी चाहिए
विस्तार। सेट नहीं नाम, जहां नाम एक सरणी है, या सेट नहीं नाम[सबस्क्रिप्ट], कहाँ पे सबस्क्रिप्ट
is * or @, संपूर्ण सरणी को हटा देता है।

RSI घोषित, स्थानीय, तथा सिफ़ पढ़िये बिल्टिन प्रत्येक एक स्वीकार करते हैं -a अनुक्रमित निर्दिष्ट करने का विकल्प
सरणी और ए -A एक सहयोगी सरणी निर्दिष्ट करने का विकल्प। यदि दोनों विकल्प प्रदान किए जाते हैं, -A
प्रधानता मिलती है। पढ़ना बिल्टिन एक स्वीकार करता है -a पढ़े गए शब्दों की सूची निर्दिष्ट करने का विकल्प
मानक इनपुट से एक सरणी तक। सेट और घोषित बिल्टिन्स सरणी मान प्रदर्शित करते हैं
एक ऐसा तरीका जो उन्हें असाइनमेंट के रूप में पुन: उपयोग करने की अनुमति देता है।

विस्तार


शब्दों में विभाजित होने के बाद कमांड लाइन पर विस्तार किया जाता है। वहाँ हैं
सात प्रकार के विस्तार किए गए: ब्रेस विस्तार, टिल्ड विस्तार, प्राचल और
परिवर्तनशील विस्तार, आदेश प्रतिस्थापन, अंकगणित विस्तार, शब्द बंटवारे, तथा
पथ नाम विस्तार.

विस्तारों का क्रम है: ब्रेस विस्तार; टिल्ड विस्तार, पैरामीटर और चर
विस्तार, अंकगणितीय विस्तार, और कमांड प्रतिस्थापन (बाएं से दाएं में किया गया)।
पहनावा); शब्द विभाजन; और पथनाम विस्तार.

उन प्रणालियों पर जो इसका समर्थन कर सकते हैं, एक अतिरिक्त विस्तार उपलब्ध है: प्रक्रिया
प्रतिस्थापन. यह टिल्ड, पैरामीटर, वेरिएबल और के साथ एक ही समय में किया जाता है
अंकगणितीय विस्तार और कमांड प्रतिस्थापन।

केवल ब्रेस विस्तार, शब्द विभाजन और पथनाम विस्तार ही संख्या बदल सकते हैं
विस्तार के शब्द; अन्य विस्तार एक शब्द को एक शब्द में विस्तारित करते हैं। केवल
इसके अपवाद "के विस्तार हैं$@"और"${नाम[@]}"जैसा कि ऊपर बताया गया है (देखें
पैरामीटर).

ब्रेस विस्तार
ब्रेस विस्तार एक तंत्र है जिसके द्वारा मनमाना तार उत्पन्न किया जा सकता है। यह
तंत्र के समान है पथ नाम विस्तार, लेकिन जेनरेट किए गए फ़ाइलनाम मौजूद होने की आवश्यकता नहीं है।
ब्रेस विस्तारित किए जाने वाले पैटर्न एक वैकल्पिक का रूप लेते हैं प्रस्तावना, उसके बाद या तो ए
अल्पविराम से अलग की गई तारों की श्रृंखला या ब्रेसिज़ की एक जोड़ी के बीच अनुक्रम अभिव्यक्ति,
उसके बाद एक वैकल्पिक परिशिष्ट भाग. प्रस्तावना निहित प्रत्येक स्ट्रिंग से पहले जुड़ी हुई है
ब्रेसिज़ के भीतर, और फिर पोस्टस्क्रिप्ट को विस्तार करते हुए प्रत्येक परिणामी स्ट्रिंग में जोड़ा जाता है
बाएं से दायां।

ब्रेस विस्तार को नेस्टेड किया जा सकता है। प्रत्येक विस्तारित स्ट्रिंग के परिणाम क्रमबद्ध नहीं हैं; बाएं
सही क्रम में संरक्षित है. उदाहरण के लिए, ए{डी,सी,बी}ई 'एड ऐस अबे' में विस्तारित होता है।

एक अनुक्रम अभिव्यक्ति का रूप ले लेती है {x..y[..इन्क्र]}, जहां x और y या तो पूर्णांक हैं या
एकल वर्ण, और इन्क्र, एक वैकल्पिक वृद्धि, एक पूर्णांक है। जब पूर्णांक होते हैं
आपूर्ति की गई, अभिव्यक्ति प्रत्येक संख्या के बीच विस्तारित होती है x और y, सहित। आपूर्ति
पूर्णांकों को पहले जोड़ा जा सकता है 0 प्रत्येक पद की चौड़ाई समान रखने के लिए बाध्य करना। जब या तो x
or y शून्य से शुरू होता है, शेल सभी उत्पन्न शब्दों को शामिल करने के लिए बाध्य करने का प्रयास करता है
अंकों की समान संख्या, जहां आवश्यक हो वहां शून्य-पैडिंग। जब पात्रों की आपूर्ति की जाती है, तो
अभिव्यक्ति प्रत्येक वर्ण के बीच शब्दकोषीय रूप से विस्तारित होती है x और y, समावेशी, उपयोग करना
डिफ़ॉल्ट C लोकेल. ध्यान दें कि दोनों x और y एक ही प्रकार का होना चाहिए. जब
वेतन वृद्धि की आपूर्ति की जाती है, इसका उपयोग प्रत्येक पद के बीच अंतर के रूप में किया जाता है। डिफ़ॉल्ट
वृद्धि उचित रूप से 1 या -1 है।

ब्रेस विस्तार किसी भी अन्य विस्तार और किसी विशेष वर्ण से पहले किया जाता है
अन्य विस्तार परिणाम में संरक्षित हैं। यह पूर्णतया पाठ्यपरक है। खूब जोर से पीटना नहीं होता है
विस्तार के संदर्भ या पाठ के बीच किसी वाक्यात्मक व्याख्या को लागू करें
ब्रेसिज़।

एक सही ढंग से निर्मित ब्रेस विस्तार में बिना उद्धृत उद्घाटन और समापन ब्रेसिज़ शामिल होना चाहिए, और
कम से कम एक गैर-उद्धृत अल्पविराम या वैध अनुक्रम अभिव्यक्ति। कोई गलत तरीके से बना ब्रेस
विस्तार को अपरिवर्तित छोड़ दिया गया है। ए { or , इसके अस्तित्व को रोकने के लिए बैकस्लैश के साथ उद्धृत किया जा सकता है
ब्रेस अभिव्यक्ति का हिस्सा माना जाता है। पैरामीटर विस्तार के साथ टकराव से बचने के लिए,
स्ट्रिंग ${ ब्रेस विस्तार के लिए योग्य नहीं माना जाता है।

यह निर्माण आमतौर पर शॉर्टहैंड के रूप में उपयोग किया जाता है जब स्ट्रिंग्स का सामान्य उपसर्ग होता है
उपरोक्त उदाहरण की तुलना में उत्पन्न होने में अधिक समय लगता है:

mkdir /usr/local/src/bash/{पुराना,नया,जिला,बग}
or
चाउन जड़ /यूएसआर/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}

ब्रेस विस्तार ऐतिहासिक संस्करणों के साथ थोड़ी असंगति का परिचय देता है sh. sh
विशेष रूप से जब वे किसी शब्द के भाग के रूप में प्रकट होते हैं, तो ब्रेसिज़ को खोलने या बंद करने पर विचार नहीं किया जाता है, और
उन्हें आउटपुट में सुरक्षित रखता है। खूब जोर से पीटना ब्रेस के परिणामस्वरूप शब्दों से ब्रेसिज़ हटा देता है
विस्तार। उदाहरण के लिए, एक शब्द दर्ज किया गया sh as फ़ाइल{1,2} में हूबहू दिखाई देता है
आउटपुट. वही शब्द आउटपुट है file1 file2 द्वारा विस्तार के बाद खूब जोर से पीटना. अगर सख्त है
के साथ संगतता sh वांछित है, प्रारंभ करें खूब जोर से पीटना साथ +B विकल्प या ब्रेस विस्तार अक्षम करें
साथ +B विकल्प सेट आदेश (देखें शेल अंतर्निहित कमानों नीचे).

टिल्ड विस्तार
यदि कोई शब्द किसी गैर-उद्धृत टिल्ड वर्ण (`.) से शुरू होता है~'), पूर्ववर्ती सभी पात्र
पहले गैर-उद्धृत स्लैश (या सभी वर्ण, यदि कोई गैर-उद्धृत स्लैश नहीं है) पर विचार किया जाता है
a टिल्ड-उपसर्ग. यदि टिल्ड-उपसर्ग में कोई भी वर्ण उद्धृत नहीं किया गया है, तो वर्ण
टिल्ड-उपसर्ग में निम्नलिखित टिल्ड को संभव माना जाता है लॉग इन नाम। अगर यह
लॉगिन नाम शून्य स्ट्रिंग है, टिल्ड को शेल पैरामीटर के मान से बदल दिया गया है
होम. अगर होम अनसेट है, तो शेल को निष्पादित करने वाले उपयोगकर्ता की होम निर्देशिका को प्रतिस्थापित कर दिया गया है
बजाय। अन्यथा, टिल्ड-उपसर्ग को संबद्ध होम निर्देशिका से बदल दिया जाता है
निर्दिष्ट लॉगिन नाम.

यदि टिल्ड-उपसर्ग `~+' है, तो शेल चर का मान लोक निर्माण विभाग टिल्ड की जगह लेता है-
उपसर्ग. यदि टिल्ड-उपसर्ग `~-' है, तो शेल चर का मान ओल्डपीडब्ल्यूडी, अगर यह होता है
सेट, प्रतिस्थापित किया गया है। यदि टिल्ड-उपसर्ग में टिल्ड का अनुसरण करने वाले वर्णों से मिलकर बनता है
एक संख्या N, वैकल्पिक रूप से `+' या `-' से पहले, टिल्ड-उपसर्ग को इसके साथ बदल दिया जाता है
निर्देशिका स्टैक से संबंधित तत्व, जैसा कि इसके द्वारा प्रदर्शित किया जाएगा dirs
बिल्टिन को एक तर्क के रूप में टिल्ड-उपसर्ग के साथ लागू किया गया। यदि अक्षर अनुसरण कर रहे हैं
टिल्ड-उपसर्ग में टिल्ड एक संख्या से बना है जिसमें अग्रणी `+' या `-' नहीं है, `+' है
माना।

यदि लॉगिन नाम अमान्य है, या टिल्ड विस्तार विफल रहता है, तो शब्द अपरिवर्तित है।

प्रत्येक वैरिएबल असाइनमेंट को तुरंत निम्नलिखित गैर-उद्धृत टिल्ड-उपसर्गों के लिए जांचा जाता है :
या पहले =. इन मामलों में, टिल्ड विस्तार भी किया जाता है। नतीजतन, कोई भी हो सकता है
असाइनमेंट में टिल्ड के साथ फ़ाइल नाम का उपयोग करें पथ, मेलपथ, तथा CDPATH, और खोल
विस्तारित मान निर्दिष्ट करता है.

प्राचल विस्तार
`$'चरित्र पैरामीटर विस्तार, कमांड प्रतिस्थापन, या अंकगणित का परिचय देता है
विस्तार। विस्तारित किए जाने वाले पैरामीटर नाम या प्रतीक को ब्रेसिज़ में संलग्न किया जा सकता है, जो
वैकल्पिक हैं लेकिन वेरिएबल को तुरंत वर्णों से विस्तारित करने की सुरक्षा के लिए काम करते हैं
इसका अनुसरण करते हुए इसे नाम के भाग के रूप में समझा जा सकता है।

जब ब्रेसिज़ का उपयोग किया जाता है, तो मैचिंग एंडिंग ब्रेस पहला ` होता है}'ए से बच नहीं पाया
बैकस्लैश या उद्धृत स्ट्रिंग के भीतर, और एम्बेडेड अंकगणितीय विस्तार के भीतर नहीं,
कमांड प्रतिस्थापन, या पैरामीटर विस्तार।

${प्राचल}
के मूल्य प्राचल प्रतिस्थापित किया जाता है. ब्रेसिज़ की आवश्यकता कब होती है प्राचल एक
एक से अधिक अंकों के साथ स्थितीय पैरामीटर, या कब प्राचल इसके बाद ए
वह चरित्र जिसकी व्याख्या उसके नाम के भाग के रूप में नहीं की जानी चाहिए। प्राचल एक
शेल पैरामीटर जैसा कि ऊपर वर्णित है पैरामीटर) या एक सरणी संदर्भ (Arrays).

यदि का पहला अक्षर प्राचल विस्मयादिबोधक बिंदु है (!), यह एक स्तर का परिचय देता है
परिवर्तनशील संकेत. खूब जोर से पीटना शेष से बने वेरिएबल के मान का उपयोग करता है
प्राचल चर के नाम के रूप में; फिर इस वेरिएबल का विस्तार किया जाता है और वह मान होता है
के मान के बजाय शेष प्रतिस्थापन में उपयोग किया जाता है प्राचल अपने आप। यह है
जाना जाता है अप्रत्यक्ष विस्तार. इसका अपवाद ${ का विस्तार है!उपसर्ग*} तथा
${!नाम[@]} नीचे वर्णित। विस्मयादिबोधक बिंदु को तुरंत बाएं ब्रेस का अनुसरण करना चाहिए
अप्रत्यक्ष परिचय देने के लिए.

नीचे दिए गए प्रत्येक मामले में, शब्द टिल्ड विस्तार, पैरामीटर विस्तार के अधीन है,
कमांड प्रतिस्थापन, और अंकगणितीय विस्तार।

जब सबस्ट्रिंग विस्तार नहीं किया जा रहा हो, तो नीचे दिए गए दस्तावेज़ों का उपयोग करें (उदाहरण के लिए, :-), खूब जोर से पीटना
ऐसे पैरामीटर के लिए परीक्षण जो अनसेट या शून्य है। कोलन को छोड़ने से केवल एक परीक्षण होता है
एक पैरामीटर के लिए जो सेट नहीं है।

${प्राचल:-शब्द}
उपयोग चूक मान. अगर प्राचल असेट या शून्य है, का विस्तार शब्द is
प्रतिस्थापित. अन्यथा, का मूल्य प्राचल प्रतिस्थापित है।
${प्राचल:=शब्द}
सौंपना चूक मान. अगर प्राचल असेट या शून्य है, का विस्तार शब्द is
को सौंपना प्राचल। का मूल्य प्राचल फिर प्रतिस्थापित किया जाता है। अवस्था का
पैरामीटर और विशेष पैरामीटर को इस तरह से निर्दिष्ट नहीं किया जा सकता है।
${प्राचल:?शब्द}
डिस्प्ले त्रुटि if अशक्त or अनसेट. अगर प्राचल शून्य या असेट है, का विस्तार
शब्द (या उस आशय का एक संदेश यदि शब्द मौजूद नहीं है) को लिखा गया है
मानक त्रुटि और शेल, यदि यह इंटरैक्टिव नहीं है, बाहर निकल जाता है। अन्यथा
के मूल्य प्राचल प्रतिस्थापित है।
${प्राचल:+शब्द}
उपयोग वैकल्पिक वैल्यू . अगर प्राचल शून्य या असेट है, कुछ भी प्रतिस्थापित नहीं किया गया है,
अन्यथा का विस्तार शब्द प्रतिस्थापित है।
${प्राचल:ओफ़्सेट}
${प्राचल:ओफ़्सेट:लंबाई}
सबस्ट्रिंग विस्तार. तक विस्तृत है लंबाई के मूल्य के अक्षर प्राचल
द्वारा निर्दिष्ट वर्ण से प्रारंभ करना ओफ़्सेट. अगर प्राचल is @, एक अनुक्रमित सरणी
द्वारा सदस्यता ली गई @ or *, या एक सहयोगी सरणी नाम, परिणाम भिन्न होते हैं
नीचे वर्णित। अगर लंबाई छोड़ा गया है, के मान के उपस्ट्रिंग तक विस्तारित होता है
प्राचल द्वारा निर्दिष्ट वर्ण से प्रारंभ करना ओफ़्सेट और के अंत तक विस्तार कर रहा है
मूल्य। लंबाई और ओफ़्सेट अंकगणितीय अभिव्यक्तियाँ हैं (देखें अंकगणित मूल्यांकन
नीचे).

If ओफ़्सेट शून्य से कम संख्या का मूल्यांकन करता है, मान का उपयोग ऑफसेट के रूप में किया जाता है
के मान के अंत से अक्षर प्राचल. अगर लंबाई किसी संख्या का मूल्यांकन करता है
शून्य से कम, इसे अंत से वर्णों में ऑफसेट के रूप में समझा जाता है
के मूल्य प्राचल वर्णों की संख्या के बजाय, और विस्तार है
बीच के अक्षर ओफ़्सेट और वह परिणाम. ध्यान दें कि एक नकारात्मक ऑफसेट होना चाहिए
भ्रमित होने से बचने के लिए कोलन से कम से कम एक स्थान अलग करें :-
विस्तार।

If प्राचल is @, परिणाम है लंबाई स्थितीय पैरामीटर शुरू होते हैं ओफ़्सेट.
एक नकारात्मक ओफ़्सेट सबसे बड़ी स्थिति से भी अधिक के सापेक्ष लिया जाता है
पैरामीटर, इसलिए -1 का ऑफसेट अंतिम स्थितीय पैरामीटर का मूल्यांकन करता है। यह है एक
विस्तार त्रुटि यदि लंबाई शून्य से कम संख्या का मूल्यांकन करता है।

If प्राचल एक अनुक्रमित सरणी नाम है जिसे @ या * द्वारा सबस्क्रिप्ट किया गया है, परिणाम है
लंबाई ${ से शुरू होने वाले सरणी के सदस्यप्राचल[ओफ़्सेट]}. एक नकारात्मक ओफ़्सेट
निर्दिष्ट सरणी के अधिकतम सूचकांक से एक अधिक के सापेक्ष लिया जाता है। यह
यदि एक विस्तार त्रुटि है लंबाई शून्य से कम संख्या का मूल्यांकन करता है।

एक सहयोगी सरणी पर लागू सबस्ट्रिंग विस्तार अपरिभाषित परिणाम उत्पन्न करता है।

सबस्ट्रिंग इंडेक्सिंग शून्य-आधारित है जब तक कि स्थितीय मापदंडों का उपयोग नहीं किया जाता है
किस स्थिति में अनुक्रमण डिफ़ॉल्ट रूप से 1 से प्रारंभ होता है। अगर ओफ़्सेट 0 है, और स्थितीय
पैरामीटर का उपयोग किया जाता है, $0 सूची के पहले लगा हुआ है.

${!उपसर्ग*}
${!उपसर्ग@}
नाम मिलान उपसर्ग. उन वेरिएबल्स के नामों तक विस्तारित होता है जिनके नाम शुरू होते हैं
उपसर्ग, के पहले अक्षर से अलग किया गया आईएफएस विशेष चर. कब @ is
उपयोग किया जाता है और विस्तार दोहरे उद्धरण चिह्नों के भीतर दिखाई देता है, प्रत्येक चर नाम का विस्तार होता है
एक अलग शब्द.

${!नाम[@]}
${!नाम[*]}
सूची of सरणी Instagram पर . अगर नाम एक सरणी चर है, सरणी की सूची में विस्तारित होता है
में निर्दिष्ट सूचकांक (कुंजियाँ)। नाम. अगर नाम एक सरणी नहीं है, यदि 0 तक विस्तारित है नाम is
सेट करें और अन्यथा शून्य करें। कब @ का उपयोग किया जाता है और विस्तार दोगुना के भीतर दिखाई देता है
उद्धरण, प्रत्येक कुंजी एक अलग शब्द में विस्तारित होती है।

${#प्राचल}
प्राचल लंबाई. के मान के वर्णों में लंबाई प्राचल is
प्रतिस्थापित. अगर प्राचल is * or @, प्रतिस्थापित मान की संख्या है
स्थितीय पैरामीटर. अगर प्राचल द्वारा सबस्क्रिप्ट किया गया एक सरणी नाम है * or @,
प्रतिस्थापित मान सरणी में तत्वों की संख्या है। अगर प्राचल है एक
अनुक्रमित सरणी नाम को एक ऋणात्मक संख्या द्वारा सबस्क्रिप्ट किया गया है, उस संख्या की व्याख्या इस प्रकार की जाती है
के अधिकतम सूचकांक से एक अधिक के सापेक्ष प्राचल, इसलिए नकारात्मक सूचकांक
सरणी के अंत से गिनती करें, और -1 का सूचकांक अंतिम को संदर्भित करता है
तत्व।

${प्राचल#शब्द}
${प्राचल##शब्द}
हटाना मिलान उपसर्ग पैटर्नशब्द एक पैटर्न तैयार करने के लिए इसका विस्तार किया जाता है
पथनाम विस्तार में. यदि पैटर्न के मान की शुरुआत से मेल खाता है
प्राचल, तो विस्तार का परिणाम विस्तारित मूल्य है प्राचल साथ में
सबसे छोटा मिलान पैटर्न (``#'' केस) या सबसे लंबा मिलान पैटर्न (द
``##'' केस) हटा दिया गया। अगर प्राचल is @ or *, पैटर्न हटाने का ऑपरेशन है
प्रत्येक स्थितीय पैरामीटर को बारी-बारी से लागू किया जाता है, और विस्तार परिणामी होता है
सूची। अगर प्राचल एक ऐरे वेरिएबल है जिसके साथ सबस्क्रिप्ट किया गया है @ or *, नमूना
निष्कासन ऑपरेशन को सरणी के प्रत्येक सदस्य पर बारी-बारी से लागू किया जाता है, और विस्तार किया जाता है
परिणामी सूची है.

${प्राचल%शब्द}
${प्राचल%%शब्द}
हटाना मिलान प्रत्यय पैटर्नशब्द एक पैटर्न तैयार करने के लिए इसका विस्तार किया जाता है
पथनाम विस्तार में. यदि पैटर्न विस्तारित के अनुगामी भाग से मेल खाता है
के मूल्य प्राचल, तो विस्तार का परिणाम विस्तारित मूल्य है
प्राचल सबसे छोटे मिलान पैटर्न के साथ (``%'' मामला) या सबसे लंबा
मिलान पैटर्न (``%%'' केस) हटा दिया गया। अगर प्राचल is @ or *, नमूना
निष्कासन ऑपरेशन को प्रत्येक स्थितीय पैरामीटर पर बारी-बारी से लागू किया जाता है, और
विस्तार परिणामी सूची है. अगर प्राचल एक ऐरे वैरिएबल सबस्क्रिप्टेड है
साथ में @ or *, पैटर्न हटाने की कार्रवाई सरणी के प्रत्येक सदस्य पर लागू होती है
बदले में, और विस्तार परिणामी सूची है।

${प्राचल/पैटर्न/स्ट्रिंग}
पैटर्न प्रतिस्थापनपैटर्न जैसा कि एक पैटर्न बनाने के लिए विस्तारित किया गया है
पथनाम विस्तार. प्राचल का विस्तार और सबसे लंबा मिलान है पैटर्न के खिलाफ
इसका मान प्रतिस्थापित कर दिया गया है स्ट्रिंग. अगर पैटर्न साथ शुरू होता है /, के सभी मैच
पैटर्न से बदल दिया जाता है स्ट्रिंग. आम तौर पर केवल पहला मैच ही बदला जाता है। अगर
पैटर्न साथ शुरू होता है #, इसे विस्तारित मान की शुरुआत में मेल खाना चाहिए
प्राचल. अगर पैटर्न साथ शुरू होता है %, इसे विस्तारित के अंत में मेल खाना चाहिए
के मूल्य प्राचल. अगर स्ट्रिंग शून्य है, से मेल खाता है पैटर्न हटा दिए गए हैं और /
निम्नलिखित पैटर्न छोड़ा जा सकता है. अगर प्राचल is @ or *, प्रतिस्थापन
ऑपरेशन को प्रत्येक स्थितीय पैरामीटर पर बारी-बारी से लागू किया जाता है, और विस्तार होता है
परिणामी सूची. अगर प्राचल एक ऐरे वेरिएबल है जिसके साथ सबस्क्रिप्ट किया गया है @ or *,
प्रतिस्थापन ऑपरेशन को सरणी के प्रत्येक सदस्य पर बारी-बारी से लागू किया जाता है, और
विस्तार परिणामी सूची है.

${प्राचल^पैटर्न}
${प्राचल^^पैटर्न}
${प्राचल,पैटर्न}
${प्राचल,,पैटर्न}
मामला संशोधन. यह विस्तार वर्णमाला वर्णों के मामले को संशोधित करता है
प्राचलपैटर्न पाथनाम की तरह ही एक पैटर्न तैयार करने के लिए इसका विस्तार किया गया है
विस्तार। के विस्तारित मूल्य में प्रत्येक वर्ण प्राचल के विरुद्ध परीक्षण किया जाता है
पैटर्न, और, यदि यह पैटर्न से मेल खाता है, तो इसका केस परिवर्तित हो जाता है। पैटर्न चाहिए
एक से अधिक वर्णों का मिलान करने का प्रयास न करें. ^ ऑपरेटर लोअरकेस में कनवर्ट करता है
अक्षर मिलान पैटर्न अपरकेस में; , ऑपरेटर मिलान वाले अपरकेस को परिवर्तित करता है
छोटे अक्षरों में अक्षर. ^^ और ,, विस्तार प्रत्येक मिलान किए गए वर्ण को परिवर्तित करते हैं
विस्तारित मूल्य; ^ और , विस्तार मेल खाते हैं और केवल पहले को परिवर्तित करते हैं
विस्तारित मूल्य में वर्ण. अगर पैटर्न छोड़ दिया गया है, इसे एक की तरह माना जाता है ?,
जो हर कैरेक्टर से मेल खाता है. अगर प्राचल is @ or *, मामला संशोधन
ऑपरेशन को प्रत्येक स्थितीय पैरामीटर पर बारी-बारी से लागू किया जाता है, और विस्तार होता है
परिणामी सूची. अगर प्राचल एक ऐरे वेरिएबल है जिसके साथ सबस्क्रिप्ट किया गया है @ or *,
केस संशोधन ऑपरेशन को सरणी के प्रत्येक सदस्य पर बारी-बारी से लागू किया जाता है, और
विस्तार परिणामी सूची है.

आदेश प्रतिस्थापन
आदेश प्रतिस्थापन कमांड नाम को बदलने के लिए कमांड के आउटपुट की अनुमति देता है। वहाँ
दो रूप हैं:

$(आदेश)
or
`आदेश`

खूब जोर से पीटना क्रियान्वित करके विस्तार करता है आदेश और कमांड प्रतिस्थापन की जगह
कमांड के मानक आउटपुट के साथ, किसी भी पिछली न्यूलाइन को हटा दिया गया। अंतर्निहित
नई पंक्तियाँ हटाई नहीं जाती हैं, लेकिन शब्द विभाजन के दौरान उन्हें हटाया जा सकता है। आदेश
प्रतिस्थापन $(बिल्ली पट्टिका) समकक्ष द्वारा प्रतिस्थापित किया जा सकता है लेकिन तेज़ $( पट्टिका).

जब प्रतिस्थापन के पुराने शैली के बैककोट फॉर्म का उपयोग किया जाता है, तो बैकस्लैश अपना शाब्दिक अर्थ बरकरार रखता है
जिसका अर्थ है सिवाय इसके कि कब अनुसरण किया जाए $, `या, \. प्रथम बैककोट के पहले a नहीं है
बैकस्लैश कमांड प्रतिस्थापन को समाप्त करता है। $( का उपयोग करते समयआदेश) रूप, सभी
कोष्ठकों के बीच के अक्षर आदेश बनाते हैं; किसी के साथ विशेष व्यवहार नहीं किया जाता।

कमांड प्रतिस्थापन को नेस्ट किया जा सकता है। बैककोटेड फॉर्म का उपयोग करते समय नेस्ट करने के लिए, से बचें
बैकस्लैश के साथ आंतरिक बैककोट।

यदि प्रतिस्थापन दोहरे उद्धरण चिह्नों, शब्द विभाजन और पथनाम विस्तार के भीतर दिखाई देता है
परिणामों पर कार्य नहीं किया जाता।

अंकगणित विस्तार
अंकगणितीय विस्तार एक अंकगणितीय अभिव्यक्ति के मूल्यांकन की अनुमति देता है और
परिणाम का प्रतिस्थापन. अंकगणितीय विस्तार का प्रारूप है:

$((अभिव्यक्ति))

पुराना प्रारूप $[अभिव्यक्ति] पदावनत कर दिया गया है और आगामी संस्करणों में हटा दिया जाएगा
दे घुमा के।

RSI अभिव्यक्ति ऐसा व्यवहार किया जाता है मानो यह दोहरे उद्धरण चिह्नों के भीतर हो, लेकिन अंदर एक दोहरा उद्धरण है
कोष्ठक का विशेष रूप से उपचार नहीं किया गया है। अभिव्यक्ति में सभी टोकन पैरामीटर से गुजरते हैं
और परिवर्तनीय विस्तार, कमांड प्रतिस्थापन, और उद्धरण हटाना। परिणाम के रूप में माना जाता है
मूल्यांकन की जाने वाली अंकगणितीय अभिव्यक्ति। अंकगणितीय विस्तार को नेस्टेड किया जा सकता है।

मूल्यांकन नीचे सूचीबद्ध नियमों के अनुसार किया जाता है अंकगणित
मूल्यांकन. अगर अभिव्यक्ति इनवैलिड है, खूब जोर से पीटना विफलता और नहीं का संकेत देने वाला एक संदेश प्रिंट करता है
प्रतिस्थापन होता है.

प्रक्रिया प्रतिस्थापन
प्रक्रिया प्रतिस्थापन उन सिस्टमों पर समर्थित है जो नामित पाइपों का समर्थन करते हैं (फीफो) या
/देव/एफडी खुली फाइलों के नामकरण की विधि. का रूप ले लेता है <(सूची) or >(सूची)
प्रक्रिया सूची से जुड़े इसके इनपुट या आउटपुट के साथ चलाया जाता है फीफो या कुछ फ़ाइल में /देव/एफडी.
इस फ़ाइल का नाम वर्तमान कमांड के परिणाम के रूप में एक तर्क के रूप में पारित किया गया है
विस्तार। यदि >(सूची) फॉर्म का उपयोग किया जाता है, फ़ाइल पर लिखने से इनपुट मिलेगा सूची.
अगर <(सूची) फॉर्म का उपयोग किया जाता है, तर्क के रूप में पारित फ़ाइल को प्राप्त करने के लिए पढ़ा जाना चाहिए
का उत्पादन सूची.

उपलब्ध होने पर, प्रक्रिया प्रतिस्थापन पैरामीटर और के साथ एक साथ किया जाता है
परिवर्तनीय विस्तार, कमांड प्रतिस्थापन, और अंकगणितीय विस्तार।

शब्द विभाजन
शेल पैरामीटर विस्तार, कमांड प्रतिस्थापन और अंकगणित के परिणामों को स्कैन करता है
विस्तार जो दोहरे उद्धरण चिह्नों के भीतर नहीं हुआ शब्द बंटवारे.

शैल प्रत्येक पात्र का उपचार करता है आईएफएस एक परिसीमनक के रूप में, और दूसरे के परिणामों को विभाजित करता है
फ़ील्ड टर्मिनेटर के रूप में इन वर्णों का उपयोग करके शब्दों में विस्तार। अगर आईएफएस सेट नहीं है, या
इसका मूल्य बिल्कुल सही है , डिफ़ॉल्ट, फिर अनुक्रम , ,
और पिछले विस्तार के परिणामों की शुरुआत और अंत में हैं
अनदेखा किया गया, और किसी भी क्रम को आईएफएस आरंभ या अंत में न होने वाले वर्ण परिसीमन का कार्य करते हैं
शब्द। अगर आईएफएस डिफ़ॉल्ट के अलावा कोई अन्य मान है, फिर रिक्त स्थान का अनुक्रम
अक्षर अंतरिक्ष और टैब शब्द के आरंभ और अंत में ध्यान नहीं दिया जाता, जब तक कि
व्हाईटस्पेस वर्ण के मान में है आईएफएस (एक आईएफएस रिक्त स्थान वर्ण)। कोई भी पात्र
in आईएफएस वो नहीं आईएफएस रिक्त स्थान, किसी भी आसन्न के साथ आईएफएस रिक्त स्थान वर्ण,
एक फ़ील्ड का परिसीमन करता है. का एक क्रम आईएफएस व्हाईटस्पेस वर्णों को एक सीमांकक के रूप में भी माना जाता है।
यदि का मान आईएफएस शून्य है, कोई शब्द विभाजन नहीं होता है।

स्पष्ट शून्य तर्क ("" or '') बरकरार हैं. उद्धृत न किए गए अंतर्निहित अशक्त तर्क,
उन मापदंडों के विस्तार के परिणामस्वरूप जिनका कोई मान नहीं है, हटा दिए जाते हैं। यदि एक
बिना किसी मान वाले पैरामीटर को दोहरे उद्धरण चिह्नों के भीतर विस्तारित किया जाता है, एक शून्य तर्क परिणाम और होता है
बरकरार रखा।

ध्यान दें कि यदि कोई विस्तार नहीं होता है, तो कोई विभाजन नहीं किया जाता है।

पथ नाम विस्तार
शब्द विभाजन के बाद, जब तक -f विकल्प सेट कर दिया गया है, खूब जोर से पीटना के लिए प्रत्येक शब्द को स्कैन करता है
अक्षर *, ?, तथा [. यदि इनमें से कोई एक अक्षर प्रकट होता है, तो शब्द को माना जाता है
a पैटर्न, और मिलान करने वाले फ़ाइल नामों की वर्णानुक्रम में क्रमबद्ध सूची के साथ प्रतिस्थापित किया गया
पैटर्न (देखें पैटर्न मिलान नीचे)। यदि कोई मेल खाता फ़ाइल नाम नहीं मिलता है, औरshell
विकल्प nullglob सक्षम नहीं है, शब्द अपरिवर्तित छोड़ दिया गया है। यदि nullglob विकल्प है
सेट, और कोई मिलान नहीं मिला, शब्द हटा दिया गया है। यदि फेलग्लोब शेल विकल्प सेट है,
और कोई मिलान नहीं मिला, एक त्रुटि संदेश मुद्रित होता है और आदेश निष्पादित नहीं होता है। अगर
शैल विकल्प nocaseglob सक्षम है, तो मामले की परवाह किए बिना मैच खेला जाता है
वर्णमाला वर्णों का. ध्यान दें कि [az] जैसे श्रेणी अभिव्यक्तियों का उपयोग करते समय (नीचे देखें),
की सेटिंग के आधार पर, अन्य मामले के पत्र शामिल किए जा सकते हैं एलसी_COLLATE. जब
पैटर्न का उपयोग पथनाम विस्तार, चरित्र के लिए किया जाता है ``.'' किसी नाम के आरंभ में या
स्लैश के तुरंत बाद स्पष्ट रूप से मिलान किया जाना चाहिए, जब तक कि शेल विकल्प न हो डॉटग्लोब
सेट है. पथनाम का मिलान करते समय, स्लैश वर्ण का हमेशा स्पष्ट रूप से मिलान किया जाना चाहिए।
अन्य मामलों में, ``.'' चरित्र के साथ विशेष व्यवहार नहीं किया जाता। का विवरण देखें
दुकान नीचे के नीचे शेल अंतर्निहित कमानों के विवरण के लिए nocaseglob, nullglob,
फेलग्लोब, तथा डॉटग्लोब शैल विकल्प.

RSI ग्लोबिग्नोर शेल वेरिएबल का उपयोग मेल खाने वाले फ़ाइल नामों के सेट को प्रतिबंधित करने के लिए किया जा सकता है
पैटर्न. अगर ग्लोबिग्नोर सेट किया गया है, प्रत्येक मेल खाने वाला फ़ाइल नाम जो इनमें से किसी एक से भी मेल खाता है
में पैटर्न ग्लोबिग्नोर मिलानों की सूची से हटा दिया गया है. फ़ाइल नाम ``.'' और
``..'' हमेशा नजरअंदाज कर दिया जाता है जब ग्लोबिग्नोर सेट है और शून्य नहीं है. हालाँकि, सेटिंग
ग्लोबिग्नोर एक गैर-शून्य मान को सक्षम करने का प्रभाव पड़ता है डॉटग्लोब शेल विकल्प, तो सब
a से शुरू होने वाले अन्य फ़ाइल नाम ``.'' मेल खाएगा. नज़रअंदाज़ करने की पुरानी आदत पाने के लिए
a से प्रारंभ होने वाले फ़ाइल नाम ``.'', बनाना ``.*'' में पैटर्न में से एक ग्लोबिग्नोर
डॉटग्लोब विकल्प अक्षम है जब ग्लोबिग्नोर अस्तव्यस्त है।

पैटर्न मिलान

कोई भी वर्ण जो विशेष पैटर्न वर्णों के अलावा किसी पैटर्न में प्रकट होता है
नीचे वर्णित, स्वयं से मेल खाता है। NUL वर्ण एक पैटर्न में घटित नहीं हो सकता है. ए
बैकस्लैश निम्नलिखित चरित्र से बच जाता है; जब बच निकलने वाला बैकस्लैश हटा दिया जाता है
मेल मिलाना। यदि विशेष पैटर्न वर्णों का मिलान करना हो तो उन्हें उद्धृत किया जाना चाहिए
सचमुच।

विशेष पैटर्न वर्णों के निम्नलिखित अर्थ हैं:

* शून्य स्ट्रिंग सहित किसी भी स्ट्रिंग से मेल खाता है। जब ग्लोबस्टार खोल
विकल्प सक्षम है, और * पथनाम विस्तार संदर्भ में उपयोग किया जाता है, दो
सटा हुआ *एकल पैटर्न के रूप में उपयोग किया जाने वाला s सभी फ़ाइलों और शून्य या अधिक से मेल खाएगा
निर्देशिकाएँ और उपनिर्देशिकाएँ। यदि इसके बाद ए /, दो आसन्न *होगा
केवल निर्देशिकाओं और उपनिर्देशिकाओं का मिलान करें।
? किसी एक वर्ण से मेल खाता है.
[...] संलग्न वर्णों में से किसी एक से मेल खाता है। पात्रों की एक जोड़ी अलग हो गई
एक हाइफ़न द्वारा a को दर्शाया जाता है रेंज अभिव्यक्ति; कोई भी पात्र जो बीच में आता है
वर्तमान लोकेल के मिलान का उपयोग करते हुए, उन दो वर्णों को शामिल किया गया है
अनुक्रम और वर्ण सेट का मिलान किया जाता है। यदि पहला अक्षर निम्नलिखित है
la [ एक ! या एक ^ फिर संलग्न न किए गए किसी भी वर्ण का मिलान किया जाता है।
श्रेणी अभिव्यक्तियों में वर्णों का क्रमबद्ध क्रम निर्धारित किया जाता है
वर्तमान स्थान और के मान एलसी_COLLATE or LC_ALL शैल चर,
यदि सेट है. श्रेणी अभिव्यक्तियों की पारंपरिक व्याख्या प्राप्त करने के लिए,
जहां [विज्ञापन] के बराबर है [ऐ बी सी डी], का मान निर्धारित करें LC_ALL खोल चर
सेवा मेरे C, या सक्षम करें globasciiranges शैल विकल्प. ए - से मिलान किया जा सकता है
इसे सेट में पहले या आखिरी पात्र के रूप में शामिल करें। ए ] मिलान किया जा सकता है
इसे सेट में पहले पात्र के रूप में शामिल करके।

अंदर [ और ], चरित्र कक्षाएं सिंटैक्स का उपयोग करके निर्दिष्ट किया जा सकता है
[:कक्षा:], जहां कक्षा POSIX में परिभाषित निम्नलिखित वर्गों में से एक है
मानक:
alnum अल्फा ASCII रिक्त नियंत्रण अंक ग्राफ कम छाप बिंदु अंतरिक्ष ऊपरी शब्द
xdigit
एक वर्ण वर्ग उस वर्ग से संबंधित किसी भी वर्ण से मेल खाता है। शब्द
वर्ण वर्ग अक्षरों, अंकों और वर्ण _ से मेल खाता है।

अंदर [ और ], एक समानक कक्षा सिंटैक्स का उपयोग करके निर्दिष्ट किया जा सकता है
[=c=], जो समान संयोजन भार के साथ सभी वर्णों से मेल खाता है (जैसे
वर्तमान स्थान द्वारा परिभाषित) चरित्र के रूप में c.

अंदर [ और ], वाक्यविन्यास [.प्रतीक.] मिलान चिह्न से मेल खाता है प्रतीक.

अगर extglob शेल विकल्प का उपयोग करके सक्षम किया गया है दुकान निर्मित, कई विस्तारित पैटर्न
मिलान करने वाले ऑपरेटरों को मान्यता दी गई है। निम्नलिखित विवरण में, ए पैटर्न-सूची एक सूची है
एक या अधिक पैटर्न को a द्वारा अलग किया गया |. समग्र पैटर्न एक या का उपयोग करके बनाया जा सकता है
निम्नलिखित में से अधिक उप-पैटर्न:

?(पैटर्न-सूची)
दिए गए पैटर्न की शून्य या एक घटना से मेल खाता है
*(पैटर्न-सूची)
दिए गए पैटर्न की शून्य या अधिक घटनाओं से मेल खाता है
+(पैटर्न-सूची)
दिए गए पैटर्न की एक या अधिक घटनाओं से मेल खाता है
@(पैटर्न-सूची)
दिए गए पैटर्न में से एक से मेल खाता है
!(पैटर्न-सूची)
दिए गए पैटर्न में से किसी एक को छोड़कर किसी भी चीज़ से मेल खाता है

उद्धरण निष्कासन
पूर्ववर्ती विस्तारों के बाद, पात्रों की सभी गैर-उद्धृत घटनाएँ \, ', तथा "
जो उपरोक्त विस्तारों में से किसी एक के परिणामस्वरूप नहीं हुआ, उसे हटा दिया गया है।

पुनर्निर्देशन


किसी कमांड को निष्पादित करने से पहले उसका इनपुट और आउटपुट हो सकता है रीडायरेक्ट एक विशेष का उपयोग करना
शेल द्वारा व्याख्या की गई संकेतन। पुनर्निर्देशन कमांड के फ़ाइल हैंडल की अनुमति देता है
विभिन्न फ़ाइलों को संदर्भित करने के लिए डुप्लिकेट, खोला, बंद किया गया, और फ़ाइलों को बदल सकते हैं
कमांड से पढ़ता है और लिखता है। पुनर्निर्देशन का उपयोग फ़ाइल हैंडल को संशोधित करने के लिए भी किया जा सकता है
वर्तमान शेल निष्पादन वातावरण। निम्नलिखित पुनर्निर्देशन ऑपरेटर पूर्ववर्ती हो सकते हैं
या ए के भीतर कहीं भी दिखाई देते हैं सरल आदेश या a का अनुसरण कर सकते हैं आदेश. पुनर्निर्देशन हैं
बाएँ से दाएँ, उनके प्रकट होने के क्रम में संसाधित किया गया।

प्रत्येक पुनर्निर्देशन के पहले एक फ़ाइल डिस्क्रिप्टर संख्या हो सकती है
रूप के एक शब्द द्वारा {VARNAME}. इस मामले में, >&- को छोड़कर प्रत्येक पुनर्निर्देशन ऑपरेटर के लिए
और <&-, शेल 10 से अधिक या उसके बराबर फ़ाइल डिस्क्रिप्टर आवंटित करेगा और असाइन करेगा
यह करने के लिए VARNAME. यदि >&- या <&- के पहले { हैVARNAME}, का मान है VARNAME परिभाषित करता है
फ़ाइल डिस्क्रिप्टर बंद करने के लिए.

निम्नलिखित विवरण में, यदि फ़ाइल डिस्क्रिप्टर संख्या छोड़ दी गई है, और पहला
पुनर्निर्देशन ऑपरेटर का चरित्र है <, पुनर्निर्देशन मानक इनपुट को संदर्भित करता है
(फ़ाइल डिस्क्रिप्टर 0)। यदि पुनर्निर्देशन ऑपरेटर का पहला अक्षर है >,
पुनर्निर्देशन मानक आउटपुट (फ़ाइल डिस्क्रिप्टर 1) को संदर्भित करता है।

निम्नलिखित विवरण में पुनर्निर्देशन ऑपरेटर का अनुसरण करने वाला शब्द, जब तक
अन्यथा उल्लेख किया गया है, ब्रेस विस्तार, टिल्ड विस्तार, पैरामीटर और चर के अधीन है
विस्तार, कमांड प्रतिस्थापन, अंकगणितीय विस्तार, उद्धरण हटाना, पथनाम विस्तार,
और शब्द विभाजन. यदि इसका विस्तार एक से अधिक शब्दों तक हो, खूब जोर से पीटना एक त्रुटि की रिपोर्ट करता है।

ध्यान दें कि पुनर्निर्देशन का क्रम महत्वपूर्ण है। उदाहरण के लिए, आदेश

ls > डर्लिस्ट 2>&1

फ़ाइल में मानक आउटपुट और मानक त्रुटि दोनों को निर्देशित करता है dilist, जबकि आदेश

एलएस 2>&1 > dilist

केवल मानक आउटपुट को फ़ाइल में निर्देशित करता है dilist, क्योंकि मानक त्रुटि थी
मानक आउटपुट को पुनर्निर्देशित करने से पहले मानक आउटपुट से डुप्लिकेट किया गया था dilist.

खूब जोर से पीटना जैसा कि वर्णित है, कई फ़ाइल नामों को विशेष रूप से तब संभालता है जब उनका उपयोग पुनर्निर्देशन में किया जाता है
निम्न तालिका में:

/देव/एफडी/fd
If fd एक वैध पूर्णांक, फ़ाइल डिस्क्रिप्टर है fd डुप्लिकेट है.
/देव/स्टडीन
फ़ाइल डिस्क्रिप्टर 0 डुप्लिकेट किया गया है।
/देव/स्टडआउट
फ़ाइल डिस्क्रिप्टर 1 डुप्लिकेट किया गया है।
/देव/stderr
फ़ाइल डिस्क्रिप्टर 2 डुप्लिकेट किया गया है।
/देव/टीसीपी/मेजबान/बंदरगाह
If मेजबान एक वैध होस्टनाम या इंटरनेट पता है, और बंदरगाह एक पूर्णांक पोर्ट है
नंबर या सेवा का नाम, खूब जोर से पीटना संबंधित टीसीपी सॉकेट खोलने का प्रयास करता है।
/dev/udp/मेजबान/बंदरगाह
If मेजबान एक वैध होस्टनाम या इंटरनेट पता है, और बंदरगाह एक पूर्णांक पोर्ट है
नंबर या सेवा का नाम, खूब जोर से पीटना संबंधित यूडीपी सॉकेट खोलने का प्रयास करता है।

किसी फ़ाइल को खोलने या बनाने में विफलता के कारण पुनर्निर्देशन विफल हो जाता है।

9 से अधिक फ़ाइल डिस्क्रिप्टर का उपयोग करने वाले पुनर्निर्देशन का उपयोग सावधानी से किया जाना चाहिए, क्योंकि वे हो सकते हैं
शेल द्वारा आंतरिक रूप से उपयोग किए जाने वाले फ़ाइल डिस्क्रिप्टर के साथ टकराव।

ध्यान दें कि कार्यकारी बिल्टइन कमांड पुनर्निर्देशन को वर्तमान शेल में प्रभावी बना सकता है।

पुन: निर्देशित निवेश
इनपुट का पुनर्निर्देशन उस फ़ाइल का कारण बनता है जिसका नाम विस्तार के परिणामस्वरूप होता है शब्द करने के लिए हो सकता है
फ़ाइल डिस्क्रिप्टर पर पढ़ने के लिए खोला गया n, या मानक इनपुट (फ़ाइल डिस्क्रिप्टर 0) यदि n is
निर्दिष्ट नहीं है।

इनपुट को पुनर्निर्देशित करने का सामान्य प्रारूप है:

[n]<शब्द

पुन: निर्देशित उत्पादन
आउटपुट का पुनर्निर्देशन उस फ़ाइल का कारण बनता है जिसका नाम विस्तार के परिणामस्वरूप होता है शब्द करने के लिए हो सकता है
फ़ाइल डिस्क्रिप्टर पर लिखने के लिए खोला गया n, या मानक आउटपुट (फ़ाइल डिस्क्रिप्टर 1) यदि n
निर्दिष्ट नहीं है. यदि फ़ाइल मौजूद नहीं है तो इसे बनाया जाता है; यदि यह अस्तित्व में है तो यह है
शून्य आकार में काट दिया गया।

आउटपुट को पुनर्निर्देशित करने का सामान्य प्रारूप है:

[n]>शब्द

यदि पुनर्निर्देशन ऑपरेटर है >, और नोक्लोबर विकल्प सेट बनाया गया है
सक्षम, पुनर्निर्देशन विफल हो जाएगा यदि फ़ाइल जिसका नाम विस्तार के परिणामस्वरूप होता है
शब्द मौजूद है और एक नियमित फ़ाइल है। यदि पुनर्निर्देशन ऑपरेटर है >|, या पुनर्निर्देशन
ऑपरेटर है > और नोक्लोबर विकल्प सेट बिल्टइन कमांड सक्षम नहीं है,
पुनर्निर्देशन का प्रयास किया जाता है, भले ही फ़ाइल का नाम हो शब्द मौजूद।

जोड़कर भेजा गया उत्पादन
इस तरह से आउटपुट का पुनर्निर्देशन उस फ़ाइल का कारण बनता है जिसका नाम परिणाम देता है
का विस्तार शब्द फ़ाइल डिस्क्रिप्टर पर जोड़ने के लिए खोला जाना है n, या मानक आउटपुट
(फ़ाइल डिस्क्रिप्टर 1) यदि n निर्दिष्ट नहीं है. यदि फ़ाइल मौजूद नहीं है तो इसे बनाया जाता है।

आउटपुट जोड़ने का सामान्य प्रारूप है:

[n]>>शब्द

पुन: निर्देशित मानक उत्पादन और मानक त्रुटि
यह निर्माण मानक आउटपुट (फ़ाइल डिस्क्रिप्टर 1) और मानक त्रुटि दोनों की अनुमति देता है
आउटपुट (फ़ाइल डिस्क्रिप्टर 2) को उस फ़ाइल पर पुनर्निर्देशित किया जाएगा जिसका नाम विस्तार है
शब्द.

मानक आउटपुट और मानक त्रुटि को पुनर्निर्देशित करने के लिए दो प्रारूप हैं:

&>शब्द
और
>&शब्द

दोनों रूपों में से, पहले को प्राथमिकता दी जाती है। यह शब्दार्थ के समतुल्य है

>शब्द 2>&1

दूसरे फॉर्म का उपयोग करते समय, शब्द किसी संख्या तक विस्तारित नहीं हो सकता या -. यदि ऐसा होता है तो अन्य
पुनर्निर्देशन ऑपरेटर लागू होते हैं (देखें नकल पट्टिका वर्णनकर्ता अनुकूलता के लिए नीचे)
कारणों।

जोड़कर मानक उत्पादन और मानक त्रुटि
यह निर्माण मानक आउटपुट (फ़ाइल डिस्क्रिप्टर 1) और मानक त्रुटि दोनों की अनुमति देता है
आउटपुट (फ़ाइल डिस्क्रिप्टर 2) को उस फ़ाइल में जोड़ा जाना है जिसका नाम विस्तार है शब्द.

मानक आउटपुट और मानक त्रुटि जोड़ने का प्रारूप है:

&>>शब्द

यह शब्दार्थ के समतुल्य है

>>शब्द 2>&1

(देखें नकल पट्टिका वर्णनकर्ता नीचे).

यहाँ दस्तावेज़
इस प्रकार का पुनर्निर्देशन शेल को वर्तमान स्रोत से इनपुट पढ़ने का निर्देश देता है
केवल युक्त पंक्ति सीमांकक (बिना किसी अनुवर्ती रिक्त स्थान के) देखा जाता है। सभी पंक्तियाँ पढ़ी गईं
उस बिंदु तक का उपयोग कमांड के लिए मानक इनपुट के रूप में किया जाता है।

यहां दस्तावेज़ों का प्रारूप है:

<<[-]शब्द
यहाँ-दस्तावेज़
सीमांकक

कोई पैरामीटर और चर विस्तार, कमांड प्रतिस्थापन, अंकगणितीय विस्तार, या
पथनाम विस्तार पर किया जाता है शब्द. यदि कोई पात्र है शब्द उद्धृत हैं,
सीमांकक पर उद्धरण हटाने का परिणाम है शब्द, और यहाँ-दस्तावेज़ में पंक्तियाँ हैं
विस्तारित नहीं. अगर शब्द उद्धृत नहीं किया गया है, यहाँ-दस्तावेज़ की सभी पंक्तियाँ अधीन हैं
पैरामीटर विस्तार, कमांड प्रतिस्थापन, और अंकगणितीय विस्तार, चरित्र
अनुक्रम \ नजरअंदाज कर दिया जाता है, और \ पात्रों को उद्धृत करने के लिए इसका उपयोग किया जाना चाहिए \, $, तथा `.

यदि पुनर्निर्देशन ऑपरेटर है <<-, फिर सभी प्रमुख टैब वर्ण हटा दिए जाते हैं
इनपुट लाइनें और युक्त लाइन सीमांकक. यह यहां-शेल के भीतर दस्तावेज़ों की अनुमति देता है
स्क्रिप्ट को प्राकृतिक तरीके से इंडेंट किया जाना चाहिए।

यहाँ स्ट्रिंग्स
यहां दस्तावेजों का एक प्रकार, प्रारूप है:

<<शब्द

RSI शब्द ब्रेस विस्तार, टिल्ड विस्तार, पैरामीटर और चर विस्तार से गुजरता है,
कमांड प्रतिस्थापन, अंकगणितीय विस्तार, और उद्धरण हटाना। पथनाम विस्तार और
शब्द विभाजन नहीं किया जाता. परिणाम को एकल स्ट्रिंग के रूप में आपूर्ति की जाती है
इसके मानक इनपुट पर कमांड।

नकल पट्टिका वर्णनकर्ता
पुनर्निर्देशन ऑपरेटर

[n]<&शब्द

इनपुट फ़ाइल डिस्क्रिप्टर को डुप्लिकेट करने के लिए उपयोग किया जाता है। अगर शब्द एक या अधिक अंकों तक विस्तारित होता है
फ़ाइल डिस्क्रिप्टर द्वारा दर्शाया गया है n उस फ़ाइल डिस्क्रिप्टर की एक प्रति बनाई जाती है। यदि अंक
in शब्द इनपुट के लिए खुले फ़ाइल डिस्क्रिप्टर को निर्दिष्ट न करें, एक पुनर्निर्देशन त्रुटि उत्पन्न होती है। अगर
शब्द का मूल्यांकन करता है -, फ़ाइल डिस्क्रिप्टर n बन्द है। अगर n निर्दिष्ट नहीं है, मानक
इनपुट (फ़ाइल डिस्क्रिप्टर 0) का उपयोग किया जाता है।

परिचालक

[n]>&शब्द

डुप्लिकेट आउटपुट फ़ाइल डिस्क्रिप्टर के समान ही उपयोग किया जाता है। अगर n निर्दिष्ट नहीं है,
मानक आउटपुट (फ़ाइल डिस्क्रिप्टर 1) का उपयोग किया जाता है। यदि अंक अंदर शब्द कोई फ़ाइल निर्दिष्ट न करें
आउटपुट के लिए डिस्क्रिप्टर खुला है, एक पुनर्निर्देशन त्रुटि उत्पन्न होती है। अगर शब्द का मूल्यांकन करता है -, फ़ाइल
वर्णनकर्ता n बन्द है। एक विशेष मामले के रूप में, यदि n छोड़ा गया है, और शब्द तक विस्तारित नहीं होता है
एक या अधिक अंक या -, मानक आउटपुट और मानक त्रुटि को इस प्रकार पुनर्निर्देशित किया जाता है
पहले वर्णित।

चलती पट्टिका वर्णनकर्ता
पुनर्निर्देशन ऑपरेटर

[n]<&अंक-

फ़ाइल डिस्क्रिप्टर को ले जाता है अंक डिस्क्रिप्टर फ़ाइल करने के लिए n, या मानक इनपुट (फ़ाइल
वर्णनकर्ता 0) यदि n निर्दिष्ट नहीं है। अंक डुप्लिकेट होने के बाद बंद कर दिया गया है n.

इसी प्रकार, पुनर्निर्देशन ऑपरेटर

[n]>&अंक-

फ़ाइल डिस्क्रिप्टर को ले जाता है अंक डिस्क्रिप्टर फ़ाइल करने के लिए n, या मानक आउटपुट (फ़ाइल
वर्णनकर्ता 1) यदि n निर्दिष्ट नहीं है।

उद्घाटन पट्टिका वर्णनकर्ता एसटी पढ़ना और लेखन
पुनर्निर्देशन ऑपरेटर

[n]<>शब्द

उस फ़ाइल का कारण बनता है जिसका नाम विस्तार है शब्द और दोनों पढ़ने के लिए खोला जाएगा
फ़ाइल डिस्क्रिप्टर पर लिखना n, या फ़ाइल डिस्क्रिप्टर 0 पर यदि n निर्दिष्ट नहीं है. यदि फ़ाइल
अस्तित्व में नहीं है, यह बनाया गया है।

उपनाम


फर्जी नाम किसी शब्द के स्थान पर एक स्ट्रिंग को तब प्रतिस्थापित करने की अनुमति दें जब इसका उपयोग a के पहले शब्द के रूप में किया जाता है
सरल आदेश. शेल उन उपनामों की एक सूची रखता है जिन्हें इसके साथ सेट और अनसेट किया जा सकता है
उर्फ और अनलिया अंतर्निहित आदेश (देखें शेल अंतर्निहित कमानों नीचे)। का पहला शब्द
प्रत्येक साधारण कमांड, यदि उद्धृत नहीं किया गया है, तो यह देखने के लिए जाँच की जाती है कि क्या उसका कोई उपनाम है। यदि हां, तो वह शब्द
उपनाम के पाठ द्वारा प्रतिस्थापित किया जाता है। पात्र /, $, `, तथा = और कोई भी खोल
अक्षरों से परे या ऊपर सूचीबद्ध वर्णों को उद्धृत करना किसी उपनाम नाम में प्रकट नहीं हो सकता है।
प्रतिस्थापन पाठ में शेल मेटाएक्टर सहित कोई भी वैध शेल इनपुट हो सकता है।
प्रतिस्थापन पाठ के पहले शब्द का उपनामों के लिए परीक्षण किया जाता है, लेकिन एक शब्द जो समान है
किसी उपनाम का विस्तार किया जाना दूसरी बार विस्तारित नहीं किया जाता है। इसका मतलब यह है कि कोई उपनाम हो सकता है ls
सेवा मेरे ls -F, उदाहरण के लिए, और खूब जोर से पीटना प्रतिस्थापन पाठ को पुनरावर्ती रूप से विस्तारित करने का प्रयास नहीं करता है।
यदि उपनाम मान का अंतिम वर्ण a है रिक्त, फिर अगला कमांड शब्द निम्नलिखित है
उपनाम को उपनाम विस्तार के लिए भी जांचा जाता है।

उपनामों को इसके साथ बनाया और सूचीबद्ध किया जाता है उर्फ आदेश, और के साथ हटा दिया गया अनलिया
आदेश।

प्रतिस्थापन पाठ में तर्कों का उपयोग करने की कोई व्यवस्था नहीं है। यदि तर्क हैं
आवश्यकता है, एक शेल फ़ंक्शन का उपयोग किया जाना चाहिए (देखें)। कार्य नीचे).

जब शेल इंटरैक्टिव नहीं होता है तो उपनामों का विस्तार नहीं किया जाता है, जब तक कि विस्तार_उपनाम
शेल विकल्प का उपयोग करके सेट किया गया है दुकान (विवरण देखें दुकान के अंतर्गत शेल अंतर्निहित कमानों
नीचे).

उपनामों की परिभाषा और उपयोग से संबंधित नियम कुछ हद तक भ्रमित करने वाले हैं। खूब जोर से पीटना
किसी भी कमांड को निष्पादित करने से पहले हमेशा इनपुट की कम से कम एक पूरी लाइन पढ़ता है
वह पंक्ति. उपनामों का विस्तार तब किया जाता है जब कोई आदेश पढ़ा जाता है, न कि तब जब उसे निष्पादित किया जाता है।
इसलिए, किसी अन्य कमांड के समान लाइन पर दिखने वाली उपनाम परिभाषा नहीं ली जाती है
इनपुट की अगली पंक्ति पढ़ने तक प्रभावी। उपनाम परिभाषा का अनुसरण करने वाले आदेश
उस पंक्ति पर नए उपनाम से प्रभाव नहीं पड़ता. यह व्यवहार भी एक मुद्दा है जब
कार्यों का निष्पादन किया जाता है। जब कोई फ़ंक्शन परिभाषा पढ़ी जाती है तो उपनामों का विस्तार किया जाता है, न कि तब जब
फ़ंक्शन निष्पादित होता है, क्योंकि फ़ंक्शन परिभाषा स्वयं एक कंपाउंड कमांड होती है। जैसा
परिणामस्वरूप, किसी फ़ंक्शन में परिभाषित उपनाम उस फ़ंक्शन के बाद तक उपलब्ध नहीं होते हैं
निष्पादित किया जाता है। सुरक्षित रहने के लिए, उपनाम परिभाषाओं को हमेशा एक अलग पंक्ति में रखें, और उपयोग न करें
उर्फ यौगिक आदेशों में.

लगभग हर उद्देश्य के लिए, उपनामों को शेल फ़ंक्शंस द्वारा प्रतिस्थापित किया जाता है।

कार्य


एक शेल फ़ंक्शन, जिसे ऊपर वर्णित के अनुसार परिभाषित किया गया है शेल व्याकरण, की एक श्रृंखला संग्रहीत करता है
बाद में निष्पादन के लिए आदेश। जब शेल फ़ंक्शन का नाम सरल के रूप में उपयोग किया जाता है
कमांड नाम, उस फ़ंक्शन नाम से जुड़े कमांड की सूची निष्पादित की जाती है।
फ़ंक्शंस को वर्तमान शेल के संदर्भ में निष्पादित किया जाता है; के लिए कोई नई प्रक्रिया नहीं बनाई गई है
उनकी व्याख्या करें (शेल स्क्रिप्ट के निष्पादन के साथ इसकी तुलना करें)। जब कोई फ़ंक्शन होता है
निष्पादित, फ़ंक्शन के तर्क इसके दौरान स्थितीय पैरामीटर बन जाते हैं
कार्यान्वयन। विशेष पैरामीटर # परिवर्तन को प्रतिबिंबित करने के लिए अद्यतन किया गया है। विशेष पैरामीटर 0
अपरिवर्तित है. का पहला तत्व FUNCNAME वेरिएबल के नाम पर सेट किया गया है
फ़ंक्शन निष्पादित होने के दौरान कार्य करें।

शेल निष्पादन वातावरण के अन्य सभी पहलू एक फ़ंक्शन और के बीच समान हैं
इन अपवादों के साथ इसका कॉलर: द डीबग और वापसी जाल (विवरण देखें)
जाल के अंतर्गत निर्मित शेल अंतर्निहित कमानों नीचे) तब तक विरासत में नहीं मिलते जब तक कि फ़ंक्शन न हो
दिया गया निशान विशेषता (का विवरण देखें घोषित नीचे निर्मित) या
-o funtrace शेल विकल्प को सक्षम किया गया है सेट बिल्टिन (जिस स्थिति में सभी
फ़ंक्शन विरासत में मिलते हैं डीबग और वापसी जाल), और अं जाल तब तक विरासत में नहीं मिलता जब तक
la -o त्रुटि शेल विकल्प सक्षम किया गया है.

फ़ंक्शन के स्थानीय वेरिएबल को इसके साथ घोषित किया जा सकता है स्थानीय बिल्टिन कमांड।
आमतौर पर, वेरिएबल और उनके मान फ़ंक्शन और उसके कॉलर के बीच साझा किए जाते हैं।

RSI FUNCNEST वेरिएबल, यदि 0 से अधिक संख्यात्मक मान पर सेट है, तो अधिकतम परिभाषित करता है
फ़ंक्शन नेस्टिंग स्तर। फ़ंक्शन आमंत्रण जो सीमा से अधिक है, संपूर्ण का कारण बनता है
गर्भपात करने का आदेश.

यदि अंतर्निहित कमांड वापसी किसी फ़ंक्शन में निष्पादित किया जाता है, फ़ंक्शन पूरा हो जाता है और
फ़ंक्शन कॉल के बाद अगले कमांड के साथ निष्पादन फिर से शुरू होता है। कोई भी आदेश संबद्ध
साथ वापसी निष्पादन फिर से शुरू होने से पहले ट्रैप निष्पादित किया जाता है। जब कोई फ़ंक्शन पूरा हो जाता है, तो
स्थितीय मापदंडों और विशेष पैरामीटर के मान # मूल्यों को पुनः स्थापित किया जाता है
उनके पास फ़ंक्शन के निष्पादन से पहले था।

फ़ंक्शन नाम और परिभाषाएँ इसके साथ सूचीबद्ध की जा सकती हैं -f विकल्प घोषित or टाइपसेट
अंतर्निहित आदेश। -F विकल्प घोषित or टाइपसेट केवल फ़ंक्शन नाम सूचीबद्ध करेगा
(और वैकल्पिक रूप से स्रोत फ़ाइल और लाइन नंबर, यदि extdebug शेल विकल्प सक्षम है)।
फ़ंक्शंस को निर्यात किया जा सकता है ताकि उपकोश स्वचालित रूप से उन्हें परिभाषित कर सकें -f
विकल्प निर्यात निर्मित. का उपयोग करके एक फ़ंक्शन परिभाषा को हटाया जा सकता है -f विकल्प
la सेट नहीं निर्मित. ध्यान दें कि समान नाम वाले शेल फ़ंक्शंस और वेरिएबल का परिणाम हो सकता है
शेल के बच्चों को पारित पर्यावरण में कई समान-नामांकित प्रविष्टियों में।
ऐसे मामलों में सावधानी बरतनी चाहिए जहां इससे कोई समस्या हो सकती है।

कार्य पुनरावर्ती हो सकते हैं. FUNCNEST की गहराई को सीमित करने के लिए वेरिएबल का उपयोग किया जा सकता है
फ़ंक्शन कॉल स्टैक और फ़ंक्शन इनवोकेशन की संख्या को प्रतिबंधित करें। डिफ़ॉल्ट रूप से, कोई सीमा नहीं
पुनरावर्ती कॉलों की संख्या पर लगाया जाता है।

अंकगणित मूल्यांकन


शेल कुछ परिस्थितियों में अंकगणितीय अभिव्यक्तियों का मूल्यांकन करने की अनुमति देता है (देखें)।
la चलो और घोषित अंतर्निहित आदेश और अंकगणित विस्तार). में मूल्यांकन किया जाता है
निश्चित-चौड़ाई वाले पूर्णांक, अतिप्रवाह की कोई जांच नहीं, हालांकि 0 से विभाजन फंसा हुआ है और
त्रुटि के रूप में चिह्नित किया गया। संचालक और उनकी प्राथमिकता, साहचर्यता और मूल्य हैं
सी भाषा के समान। ऑपरेटरों की निम्नलिखित सूची को स्तरों में समूहीकृत किया गया है
समान-प्राथमिकता वाले ऑपरेटर। स्तरों को घटती प्राथमिकता के क्रम में सूचीबद्ध किया गया है।

id++ id--
परिवर्तनीय पोस्ट-वृद्धि और पोस्ट-कमी
++id --id
परिवर्तनीय पूर्व-वृद्धि और पूर्व-कमी
- + यूनरी माइनस और प्लस
! ~ तार्किक और बिटवाइज़ निषेध
** घातांक
* / % गुणा, भाग, शेषफल
+ - जोड़, घटाव
<< >> बाएँ और दाएँ बिटवाइज़ शिफ्ट
<= >= < >
तुलना
== != समानता और असमानता
& बिटवाइज़ और
^ बिटवाइज़ एक्सक्लूसिव OR
| बिटवाइज़ या
&& तार्किक और
|| तार्किक या
expr?expr:expr
सशर्त संचालक
= *= /= %= += -= << = >> = &= ^= |=
असाइनमेंट
pr1 , pr2
अल्पविराम

शेल वेरिएबल्स को ऑपरेंड के रूप में अनुमति दी जाती है; पैरामीटर विस्तार से पहले किया जाता है
अभिव्यक्ति का मूल्यांकन किया जाता है. एक अभिव्यक्ति के भीतर, शेल वेरिएबल्स को भी संदर्भित किया जा सकता है
पैरामीटर विस्तार सिंटैक्स का उपयोग किए बिना नाम। एक शेल वैरिएबल जो शून्य या अनसेट है
पैरामीटर विस्तार सिंटैक्स का उपयोग किए बिना नाम से संदर्भित करने पर 0 का मूल्यांकन होता है।
किसी चर के मान का मूल्यांकन एक अंकगणितीय अभिव्यक्ति के रूप में किया जाता है जब इसे संदर्भित किया जाता है, या
जब एक वेरिएबल जो दिया गया है पूर्णांक विशेषता का उपयोग करना घोषित -i एक सौंपा गया है
कीमत। एक शून्य मान का मूल्यांकन 0 होता है। एक शेल वैरिएबल के पास इसकी आवश्यकता नहीं होती है पूर्णांक गुण
एक अभिव्यक्ति में उपयोग के लिए चालू किया गया।

अग्रणी 0 वाले स्थिरांकों की व्याख्या अष्टक संख्याओं के रूप में की जाती है। एक अग्रणी 0x या 0X दर्शाता है
हेक्साडेसिमल. अन्यथा, संख्याएँ रूप ले लेती हैं [आधार#]एन, जहां वैकल्पिक आधार एक
2 और 64 के बीच दशमलव संख्या अंकगणितीय आधार का प्रतिनिधित्व करती है, और n में एक संख्या है
वह आधार. अगर आधार# छोड़ दिया जाता है, तो आधार 10 का उपयोग किया जाता है। निर्दिष्ट करते समय n, अंक
9 से अधिक को छोटे अक्षरों, बड़े अक्षरों, @, और _ द्वारा दर्शाया जाता है।
उस क्रम में। अगर आधार 36 से कम या उसके बराबर है, छोटे और बड़े अक्षर हो सकते हैं
10 और 35 के बीच की संख्याओं को दर्शाने के लिए परस्पर उपयोग किया जा सकता है।

ऑपरेटरों का मूल्यांकन प्राथमिकता के क्रम में किया जाता है। कोष्ठकों में उप-अभिव्यक्तियाँ हैं
पहले मूल्यांकन किया गया और उपरोक्त प्राथमिकता नियमों को ओवरराइड कर सकता है।

सशर्त अभिव्यक्ति


सशर्त अभिव्यक्तियों का उपयोग किया जाता है [[ कंपाउंड कमांड और परीक्षण और [ builtin
फ़ाइल विशेषताओं का परीक्षण करने और स्ट्रिंग और अंकगणितीय तुलना करने के लिए आदेश।
अभिव्यक्तियाँ निम्नलिखित यूनरी या बाइनरी प्राइमरीज़ से बनती हैं। यदि कोई पट्टिका तर्क
प्राइमरीज़ में से एक फॉर्म का है /dev/fd/n, फिर फ़ाइल डिस्क्रिप्टर n जाँच की गई है। अगर
la पट्टिका प्राइमरीज़ में से एक का तर्क एक है /देव/स्टडीन, /देव/स्टडआउटया,
/देव/stderr, फ़ाइल डिस्क्रिप्टर क्रमशः 0, 1, या 2 की जाँच की जाती है।

जब तक अन्यथा निर्दिष्ट न किया जाए, फ़ाइलों पर काम करने वाली प्राइमरीज़ प्रतीकात्मक लिंक का अनुसरण करती हैं और
लिंक के बजाय लिंक के लक्ष्य पर काम करें।

जब used के साथ प्रयोग किया जाता है [[, < और > ऑपरेटर वर्तमान लोकेल का उपयोग करके शब्दकोषीय रूप से क्रमबद्ध करते हैं।
RSI परीक्षण ASCII ऑर्डरिंग का उपयोग करके कमांड सॉर्ट करता है।

-a पट्टिका
सच है अगर पट्टिका मौजूद।
-b पट्टिका
सच है अगर पट्टिका मौजूद है और एक ब्लॉक विशेष फ़ाइल है।
-c पट्टिका
सच है अगर पट्टिका मौजूद है और एक वर्ण विशेष फ़ाइल है।
-d पट्टिका
सच है अगर पट्टिका मौजूद है और एक निर्देशिका है.
-e पट्टिका
सच है अगर पट्टिका मौजूद।
-f पट्टिका
सच है अगर पट्टिका मौजूद है और एक नियमित फ़ाइल है।
-g पट्टिका
सच है अगर पट्टिका मौजूद है और सेट-ग्रुप-आईडी है।
-h पट्टिका
सच है अगर पट्टिका मौजूद है और एक प्रतीकात्मक कड़ी है।
-k पट्टिका
सच है अगर पट्टिका मौजूद है और इसका ``चिपचिपा'' बिट सेट है।
-p पट्टिका
सच है अगर पट्टिका मौजूद है और एक नामित पाइप (फीफो) है।
-r पट्टिका
सच है अगर पट्टिका मौजूद है और पठनीय है।
-s पट्टिका
सच है अगर पट्टिका मौजूद है और इसका आकार शून्य से भी बड़ा है।
-t fd यदि फ़ाइल डिस्क्रिप्टर सही है fd खुला है और एक टर्मिनल को संदर्भित करता है।
-u पट्टिका
सच है अगर पट्टिका मौजूद है और इसका सेट-यूजर-आईडी बिट सेट है।
-w पट्टिका
सच है अगर पट्टिका मौजूद है और लिखने योग्य है।
-x पट्टिका
सच है अगर पट्टिका मौजूद है और निष्पादन योग्य है।
-G पट्टिका
सच है अगर पट्टिका मौजूद है और प्रभावी समूह आईडी के स्वामित्व में है।
-L पट्टिका
सच है अगर पट्टिका मौजूद है और एक प्रतीकात्मक कड़ी है।
-N पट्टिका
सच है अगर पट्टिका मौजूद है और इसे अंतिम बार पढ़े जाने के बाद से संशोधित किया गया है।
-O पट्टिका
सच है अगर पट्टिका मौजूद है और प्रभावी उपयोगकर्ता आईडी के स्वामित्व में है।
-S पट्टिका
सच है अगर पट्टिका मौजूद है और एक सॉकेट है।
file1 -ईएफ file2
सच है अगर file1 और file2 समान डिवाइस और इनोड नंबर देखें।
file1 -nt file2
सच है अगर file1 से नया (संशोधन दिनांक के अनुसार) है file2, या अगर file1
मौजूद है और file2 नहीं करता।
file1 -ot file2
सच है अगर file1 से बूढ़ा है file2, या अगर file2 मौजूद है और file1 नहीं करता।
-o ऑप्टनाम
यदि शेल विकल्प सही है ऑप्टनाम सक्षम किया गया है। के अंतर्गत विकल्पों की सूची देखें
का विवरण -o विकल्प सेट नीचे निर्मित.
-v VARNAME
यदि शेल वैरिएबल है तो सत्य है VARNAME सेट है (एक मान निर्दिष्ट किया गया है)।
-R VARNAME
यदि शेल वैरिएबल है तो सत्य है VARNAME सेट है और एक नाम संदर्भ है.
-z स्ट्रिंग
सत्य है यदि की लम्बाई स्ट्रिंग शून्य है
स्ट्रिंग
-n स्ट्रिंग
सत्य है यदि की लम्बाई स्ट्रिंग गैर-शून्य है.

string1 == string2
string1 = string2
यदि तार बराबर हैं तो सत्य है। = के साथ प्रयोग किया जाना चाहिए परीक्षण POSIX के लिए कमांड
अनुरूपता. जब के साथ प्रयोग किया जाता है [[ कमांड, यह पैटर्न मिलान इस प्रकार करता है
ऊपर वर्णित है (यौगिक कमानों).

string1 != string2
यदि तार समान नहीं हैं तो सत्य है।

string1 < string2
सच है अगर string1 पहले क्रमबद्ध करें string2 शब्दकोष की दृष्टि से।

string1 > string2
सच है अगर string1 बाद में क्रमबद्ध करें string2 शब्दकोष की दृष्टि से।

आर्ग1 OP आर्ग2
OP में से एक है -ईक्यू, -ने, -एलटीई, -इस, -gtया, -देना. ये अंकगणितीय बाइनरी ऑपरेटर हैं
यदि सत्य हो तो लौटें आर्ग1 के बराबर है, उसके बराबर नहीं है, उससे कम है, उससे कम है या उसके बराबर है,
से अधिक, या उससे अधिक या उसके बराबर आर्ग2, क्रमशः। arg1 और आर्ग2 हो सकता है
धनात्मक या ऋणात्मक पूर्णांक.

SIMPLE कमान विस्तार


जब एक साधारण कमांड निष्पादित किया जाता है, तो शेल निम्नलिखित विस्तार करता है,
असाइनमेंट, और पुनर्निर्देशन, बाएँ से दाएँ।

1. वे शब्द जिन्हें पार्सर ने वेरिएबल असाइनमेंट के रूप में चिह्नित किया है (वे पूर्ववर्ती हैं)।
कमांड नाम) और पुनर्निर्देशन बाद की प्रक्रिया के लिए सहेजे जाते हैं।

2. जो शब्द परिवर्तनीय असाइनमेंट या पुनर्निर्देशन नहीं हैं, उनका विस्तार किया जाता है। यदि कोई
विस्तार के बाद शब्द बचे रहते हैं, पहला शब्द कमांड का नाम माना जाता है
और शेष शब्द तर्क हैं।

3. पुनर्निर्देशन ऊपर वर्णित अनुसार किया जाता है पुनर्निर्देशन.

4. के बाद का पाठ = प्रत्येक चर असाइनमेंट में टिल्ड विस्तार होता है,
पैरामीटर विस्तार, कमांड प्रतिस्थापन, अंकगणितीय विस्तार, और उद्धरण हटाना
वेरिएबल को असाइन किए जाने से पहले।

यदि कोई कमांड नाम परिणाम नहीं देता है, तो वेरिएबल असाइनमेंट वर्तमान शेल वातावरण को प्रभावित करते हैं।
अन्यथा, वेरिएबल निष्पादित कमांड के वातावरण में जोड़े जाते हैं और नहीं
वर्तमान शेल वातावरण को प्रभावित करें। यदि कोई भी असाइनमेंट असाइन करने का प्रयास करता है
रीडओनली वेरिएबल का मान, एक त्रुटि उत्पन्न होती है, और कमांड गैर-शून्य के साथ बाहर निकलता है
स्थिति।

यदि कोई कमांड नाम परिणाम नहीं देता है, तो पुनर्निर्देशन किया जाता है, लेकिन वर्तमान को प्रभावित नहीं करता है
शैल पर्यावरण. पुनर्निर्देशन त्रुटि के कारण कमांड गैर-शून्य स्थिति से बाहर निकल जाता है।

यदि विस्तार के बाद कोई कमांड नाम बचा है, तो निष्पादन नीचे बताए अनुसार आगे बढ़ता है।
अन्यथा, आदेश बाहर निकल जाता है. यदि किसी विस्तार में कमांड प्रतिस्थापन शामिल है,
कमांड की निकास स्थिति अंतिम कमांड प्रतिस्थापन की निकास स्थिति है
प्रदर्शन किया। यदि कोई कमांड प्रतिस्थापन नहीं था, तो कमांड एक स्थिति के साथ बाहर निकल जाता है
शून्य।

कमान कार्यान्वयन


किसी कमांड को शब्दों में विभाजित करने के बाद, यदि इसका परिणाम एक सरल कमांड और एक होता है
तर्कों की वैकल्पिक सूची, निम्नलिखित क्रियाएं की जाती हैं।

यदि कमांड नाम में कोई स्लैश नहीं है, तो शेल उसका पता लगाने का प्रयास करता है। अगर वहाँ मौजूद है
उस नाम से एक शेल फ़ंक्शन, उस फ़ंक्शन को ऊपर वर्णित अनुसार लागू किया जाता है कार्य.
यदि नाम किसी फ़ंक्शन से मेल नहीं खाता है, तो शेल उसे शेल की सूची में खोजता है
बिल्टिंस. यदि कोई मिलान पाया जाता है, तो उस बिल्टिन को लागू किया जाता है।

यदि नाम न तो शेल फ़ंक्शन है और न ही बिल्टिन, और इसमें कोई स्लैश नहीं है, खूब जोर से पीटना
के प्रत्येक तत्व को खोजता है पथ एक निर्देशिका के लिए जिसमें एक निष्पादन योग्य फ़ाइल है
नाम. खूब जोर से पीटना निष्पादन योग्य फ़ाइलों के पूर्ण पथनाम याद रखने के लिए हैश तालिका का उपयोग करता है (देखें)। हैश
के अंतर्गत शेल अंतर्निहित कमानों नीचे)। में निर्देशिकाओं की पूरी खोज पथ is
केवल तभी निष्पादित किया जाता है जब कमांड हैश तालिका में नहीं मिलता है। यदि खोज है
असफल, शेल नामित शेल फ़ंक्शन की खोज करता है
कमांड_नॉट_फ़ाउंड_हैंडल. यदि वह फ़ंक्शन मौजूद है, तो इसे मूल के साथ लागू किया जाता है
कमांड और उसके तर्कों के रूप में मूल कमांड के तर्क, और फ़ंक्शन का निकास
स्थिति शेल की निकास स्थिति बन जाती है। यदि वह फ़ंक्शन परिभाषित नहीं है, तो शेल
एक त्रुटि संदेश प्रिंट करता है और 127 की निकास स्थिति लौटाता है।

यदि खोज सफल है, या यदि कमांड नाम में एक या अधिक स्लैश हैं, तो
शेल नामित प्रोग्राम को एक अलग निष्पादन वातावरण में निष्पादित करता है। तर्क 0 सेट है
दिए गए नाम के लिए, और कमांड के शेष तर्क तर्कों के लिए सेट किए गए हैं
दिया गया, यदि कोई हो.

यदि यह निष्पादन विफल हो जाता है क्योंकि फ़ाइल निष्पादन योग्य प्रारूप में नहीं है, और फ़ाइल नहीं है
एक निर्देशिका, इसे एक माना जाता है खोल लिपि, एक फ़ाइल जिसमें शेल कमांड हैं। ए
इसे निष्पादित करने के लिए उपकोश उत्पन्न किया गया है। यह उपकोश स्वयं को पुन: प्रारंभ करता है, ताकि प्रभाव
ऐसा लगता है मानो स्क्रिप्ट को संभालने के लिए एक नया शेल लागू किया गया हो, अपवाद के साथ
माता-पिता द्वारा याद किए गए आदेशों का स्थान (देखें)। हैश नीचे के नीचे शेल अंतर्निहित
कमानों) बच्चे द्वारा बनाए रखा जाता है।

यदि प्रोग्राम एक फ़ाइल है जिसकी शुरुआत होती है #!, पहली पंक्ति का शेष भाग एक निर्दिष्ट करता है
कार्यक्रम के लिए दुभाषिया. शेल ऑपरेटिंग पर निर्दिष्ट दुभाषिया को निष्पादित करता है
सिस्टम जो इस निष्पादन योग्य प्रारूप को स्वयं संभाल नहीं पाते हैं। के लिए तर्क
दुभाषिया में दुभाषिया के नाम के बाद एक वैकल्पिक तर्क शामिल होता है
प्रोग्राम की पहली पंक्ति, उसके बाद प्रोग्राम का नाम, उसके बाद कमांड
तर्क, यदि कोई हो.

कमान कार्यान्वयन वातावरण


शेल में एक है निष्पादन वातावरण, जिसमें निम्नलिखित शामिल हैं:

· पुनर्निर्देशन द्वारा संशोधित, आह्वान पर शेल द्वारा विरासत में मिली फ़ाइलें खोलें
को आपूर्ति की कार्यकारी builtin

· वर्तमान कार्यशील निर्देशिका जैसा कि निर्धारित किया गया है cd, pushdया, popd, या द्वारा विरासत में मिला है
आह्वान पर खोल

· फ़ाइल निर्माण मोड मास्क जैसा कि सेट किया गया है umask या शैल के माता-पिता से विरासत में मिला है

· वर्तमान जाल द्वारा निर्धारित जाल

· शेल पैरामीटर जो वेरिएबल असाइनमेंट द्वारा या साथ सेट किए गए हैं सेट या से विरासत में मिला है
पर्यावरण में शैल के जनक

· शेल फ़ंक्शंस को निष्पादन के दौरान परिभाषित किया गया है या शेल के मूल से विरासत में मिला है
पर्यावरण

· मंगलाचरण पर सक्षम विकल्प (या तो डिफ़ॉल्ट रूप से या कमांड-लाइन तर्कों के साथ) या
by सेट

· विकल्प द्वारा सक्षम दुकान

· शैल उपनाम के साथ परिभाषित उर्फ

· पृष्ठभूमि नौकरियों सहित विभिन्न प्रक्रिया आईडी, का मूल्य $$, और
के मूल्य पीपीआईडी

जब बिल्टिन या शेल फ़ंक्शन के अलावा एक साधारण कमांड निष्पादित किया जाना है, तो यह है
एक अलग निष्पादन वातावरण में लागू किया गया जिसमें निम्नलिखित शामिल हैं। जब तक
अन्यथा ध्यान दें, मान शेल से विरासत में मिले हैं।

· शेल की खुली फ़ाइलें, साथ ही निर्दिष्ट कोई भी संशोधन और परिवर्धन
आदेश पर पुनर्निर्देशन

· वर्तमान कार्यशील निर्देशिका

· फ़ाइल निर्माण मोड मास्क

· शेल वेरिएबल्स और फ़ंक्शंस को निर्यात के लिए चिह्नित किया गया है, साथ ही निर्यात किए गए वेरिएबल्स के साथ
आदेश, वातावरण में पारित किया गया

· शेल द्वारा पकड़े गए जाल को शेल से प्राप्त मूल्यों पर रीसेट कर दिया जाता है
पैरेंट, और शेल द्वारा नजरअंदाज किए गए जाल को नजरअंदाज कर दिया जाता है

इस अलग वातावरण में लागू किया गया आदेश शेल के निष्पादन को प्रभावित नहीं कर सकता है
पर्यावरण.

कमांड प्रतिस्थापन, कोष्ठक के साथ समूहीकृत कमांड और एसिंक्रोनस कमांड हैं
सबशेल वातावरण में लागू किया गया जो कि शेल वातावरण का डुप्लिकेट है, सिवाय इसके
शेल द्वारा पकड़े गए जाल उन मूल्यों पर रीसेट हो जाते हैं जो शेल को उससे विरासत में मिले हैं
आह्वान पर अभिभावक. पाइपलाइन के हिस्से के रूप में लागू किए गए अंतर्निहित कमांड भी हैं
एक उपकोश वातावरण में निष्पादित। उपकोश वातावरण में किए गए परिवर्तन नहीं हो सकते
शेल के निष्पादन वातावरण को प्रभावित करें।

कमांड प्रतिस्थापन निष्पादित करने के लिए उत्पन्न उपकोश का मान प्राप्त होता है -e से विकल्प
मूल शैल. जब अंदर न हो POSIX मोड, खूब जोर से पीटना को साफ़ करता है -e ऐसे उपकोशों में विकल्प।

यदि किसी आदेश का पालन किया जाता है & और कार्य नियंत्रण सक्रिय नहीं है, डिफ़ॉल्ट मानक इनपुट
कमांड के लिए खाली फ़ाइल है / Dev / बातिल. अन्यथा, लागू आदेश विरासत में मिलता है
पुनर्निर्देशन द्वारा संशोधित कॉलिंग शेल के फ़ाइल डिस्क्रिप्टर।

वातावरण


जब किसी प्रोग्राम को चालू किया जाता है तो उसे स्ट्रिंग्स की एक सरणी दी जाती है जिसे कहा जाता है वातावरण। ये है
सूची नाम-मूल्य जोड़े, रूप के नाम=मूल्य.

शेल पर्यावरण में हेरफेर करने के कई तरीके प्रदान करता है। आह्वान पर, खोल
अपने स्वयं के वातावरण को स्कैन करता है और पाए गए प्रत्येक नाम के लिए स्वचालित रूप से एक पैरामीटर बनाता है
इसके लिए चिन्हीकरण किया जा रहा है निर्यात बाल प्रक्रियाओं के लिए. निष्पादित आदेश पर्यावरण को विरासत में देते हैं।
निर्यात और घोषित -x कमांड पैरामीटर और फ़ंक्शंस को जोड़ने और हटाने की अनुमति देते हैं
पर्यावरण से. यदि परिवेश में किसी पैरामीटर का मान संशोधित किया जाता है, तो new
मूल्य पर्यावरण का हिस्सा बन जाता है और पुराने को प्रतिस्थापित कर देता है। पर्यावरण जो विरासत में मिला है
किसी भी निष्पादित कमांड में शेल का प्रारंभिक वातावरण शामिल होता है, जिसके मान हो सकते हैं
शेल में संशोधित, हटाए गए किसी भी जोड़े को कम करें सेट नहीं कमांड, साथ ही कोई भी अतिरिक्त
la निर्यात और घोषित -x आदेश देता है।

किसी के लिए भी पर्यावरण सरल आदेश या फ़ंक्शन को अस्थायी रूप से बढ़ाया जा सकता है
जैसा कि ऊपर वर्णित है, इसे पैरामीटर असाइनमेंट के साथ उपसर्ग करना पैरामीटर. इन
असाइनमेंट स्टेटमेंट केवल उस कमांड द्वारा देखे गए वातावरण को प्रभावित करते हैं।

अगर -k विकल्प सेट है (देखें) सेट नीचे अंतर्निहित कमांड), फिर सब प्राचल
असाइनमेंट को कमांड के लिए वातावरण में रखा जाता है, न कि केवल उससे पहले वाले को
आदेश का नाम.

. खूब जोर से पीटना एक बाहरी कमांड, वेरिएबल को आमंत्रित करता है _ के पूर्ण फ़ाइल नाम पर सेट है
कमांड और उस कमांड को उसके वातावरण में भेज दिया गया।

बाहर निकलें स्थिति


निष्पादित कमांड की निकास स्थिति उसके द्वारा लौटाया गया मान है प्रतीक्षापीड सिस्टम कॉल या
समतुल्य कार्य. निकास स्थितियाँ 0 और 255 के बीच आती हैं, हालाँकि, जैसा कि नीचे बताया गया है,
शेल विशेष रूप से 125 से ऊपर के मानों का उपयोग कर सकता है। शेल बिल्डिंस से बाहर निकलने की स्थिति और
कंपाउंड कमांड भी इसी सीमा तक सीमित हैं। कुछ परिस्थितियों में, खोल
विशिष्ट विफलता मोड को इंगित करने के लिए विशेष मानों का उपयोग करेगा।

शेल के प्रयोजनों के लिए, एक कमांड जो शून्य निकास स्थिति के साथ बाहर निकलता है वह सफल हो गया है। एक
शून्य की निकास स्थिति सफलता को दर्शाती है। गैर-शून्य निकास स्थिति विफलता को इंगित करती है। जब एक
कमांड एक घातक सिग्नल पर समाप्त हो जाता है N, खूब जोर से पीटना 128+ के मान का उपयोग करता हैN निकास स्थिति के रूप में.

यदि कोई कमांड नहीं मिलता है, तो इसे निष्पादित करने के लिए बनाई गई चाइल्ड प्रक्रिया एक स्थिति लौटाती है
127. यदि कोई कमांड पाया जाता है लेकिन निष्पादन योग्य नहीं है, तो रिटर्न स्थिति 126 है।

यदि कोई कमांड विस्तार या पुनर्निर्देशन के दौरान किसी त्रुटि के कारण विफल हो जाता है, तो निकास स्थिति होती है
शून्य से बड़ा।

शेल बिल्टिन कमांड 0 की स्थिति लौटाते हैं (<strong>उद्देश्य</strong>) यदि सफल हो, और गैर-शून्य (असत्य) अगर
निष्पादित करते समय एक त्रुटि उत्पन्न होती है। सभी बिल्टिन इंगित करने के लिए 2 की निकास स्थिति लौटाते हैं
ग़लत उपयोग.

खूब जोर से पीटना सिंटैक्स त्रुटि होने तक, स्वयं निष्पादित अंतिम कमांड की निकास स्थिति लौटाता है
होता है, जिस स्थिति में यह गैर-शून्य मान के साथ बाहर निकलता है। यह भी देखें निकास अंतर्निहित आदेश
नीचे.

सिग्नल


. खूब जोर से पीटना इंटरैक्टिव है, किसी जाल के अभाव में यह नजरअंदाज कर देता है सिगटरम (ताकि हत्या 0
एक इंटरैक्टिव शेल को नहीं मारता), और SIGINT पकड़ा जाता है और संभाला जाता है (ताकि प्रतीक्षा
बिल्टिन बाधित है)। सभी मामलों में, खूब जोर से पीटना ध्यान न दी जांच. अगर नौकरी पर नियंत्रण है
प्रभाव, खूब जोर से पीटना ध्यान न दी सिगटिन, सिगटौ, तथा सिगस्टप.

गैर-अंतर्निहित कमांड द्वारा चलाए जाते हैं खूब जोर से पीटना सिग्नल हैंडलर को विरासत में मिले मानों पर सेट किया गया है
अपने जनक से खोल. जब कार्य नियंत्रण प्रभावी नहीं होता है, तो अतुल्यकालिक आदेशों को अनदेखा कर दिया जाता है
SIGINT और जांच इन विरासत में मिले हैंडलर्स के अलावा। कमांड परिणामस्वरूप चलते हैं
कमांड प्रतिस्थापन कीबोर्ड-जनित कार्य नियंत्रण संकेतों को अनदेखा करता है सिगटिन, सिगटौ,
और सिगस्टप.

ए प्राप्त होने पर शेल डिफ़ॉल्ट रूप से बाहर निकल जाता है उच्छ्वास करो. बाहर निकलने से पहले, एक इंटरैक्टिव शेल
पुनः भेजता है उच्छ्वास करो सभी नौकरियों के लिए, चाहे चालू हो या रुकी हुई हो। रुके हुए कार्य भेजे जाते हैं सिगकॉन्ट सेवा मेरे
सुनिश्चित करें कि उन्हें प्राप्त हो उच्छ्वास करो. शेल को सिग्नल भेजने से रोकने के लिए
विशेष कार्य, इसे जॉब तालिका से हटा दिया जाना चाहिए अस्वीकार बिल्टिन (देखें
शेल अंतर्निहित कमानों नीचे) या प्राप्त न करने के लिए चिह्नित किया गया है उच्छ्वास करो का उपयोग अस्वीकार -h.

अगर huponexit शेल विकल्प के साथ सेट किया गया है दुकान, खूब जोर से पीटना भेजता है उच्छ्वास करो सभी नौकरियों के लिए
जब एक इंटरैक्टिव लॉगिन शेल बाहर निकलता है।

If खूब जोर से पीटना एक कमांड के पूरा होने की प्रतीक्षा कर रहा है और एक सिग्नल प्राप्त करता है जिसके लिए एक जाल है
सेट किया गया है, कमांड पूरा होने तक ट्रैप निष्पादित नहीं किया जाएगा। कब खूब जोर से पीटना इंतज़ार कर रही है
के माध्यम से एक अतुल्यकालिक कमांड के लिए प्रतीक्षा बिल्टिन, एक सिग्नल का रिसेप्शन जिसके लिए ए
जाल बिछाया गया है, इसका कारण बनेगा प्रतीक्षा निकास स्थिति के साथ तुरंत लौटने के लिए निर्मित
128 से अधिक, जिसके तुरंत बाद जाल निष्पादित किया जाता है।

नौकरी नियंत्रण


काम नियंत्रण चयनात्मक रूप से रोकने की क्षमता को संदर्भित करता है (निलंबित) प्रक्रियाओं का निष्पादन
और जारी रखने के लिए (बायोडाटा) बाद के बिंदु पर उनका निष्पादन। एक उपयोगकर्ता आमतौर पर इसका उपयोग करता है
ऑपरेटिंग सिस्टम कर्नेल द्वारा संयुक्त रूप से आपूर्ति किए गए एक इंटरैक्टिव इंटरफ़ेस के माध्यम से सुविधा
टर्मिनल ड्राइवर और खूब जोर से पीटना.

शेल एक को जोड़ता है काम प्रत्येक पाइपलाइन के साथ. यह वर्तमान में चल रहे निष्पादन की एक तालिका रखता है
नौकरियाँ, जिन्हें इसके साथ सूचीबद्ध किया जा सकता है नौकरियों आदेश। कब खूब जोर से पीटना किसी कार्य को अतुल्यकालिक रूप से प्रारंभ करता है
(में पृष्ठभूमि), यह एक पंक्ति प्रिंट करता है जो इस प्रकार दिखती है:

[1] 25647

यह दर्शाता है कि यह कार्य कार्य क्रमांक 1 है और इसमें अंतिम प्रक्रिया की प्रक्रिया आईडी है
इस कार्य से जुड़ी पाइपलाइन 25647 है। सभी प्रक्रियाएं एक ही पाइपलाइन में हैं
एक ही कार्य के सदस्य हैं. खूब जोर से पीटना का उपयोग करता है काम कार्य नियंत्रण के आधार के रूप में अमूर्तता।

कार्य नियंत्रण के लिए उपयोगकर्ता इंटरफ़ेस के कार्यान्वयन को सुविधाजनक बनाने के लिए, ऑपरेटिंग
प्रणाली एक की धारणा को बनाए रखती है वर्तमान अंतिम प्रक्रिया समूह ID. इसके सदस्य
प्रक्रिया समूह (ऐसी प्रक्रियाएं जिनकी प्रक्रिया समूह आईडी वर्तमान टर्मिनल प्रक्रिया के बराबर है
समूह आईडी) जैसे कीबोर्ड-जनित सिग्नल प्राप्त करते हैं SIGINT. इन प्रक्रियाओं को कहा जाता है
में हो अग्रभूमि. पृष्ठभूमि प्रक्रियाएँ वे हैं जिनकी प्रक्रिया समूह आईडी भिन्न होती है
टर्मिनल का; ऐसी प्रक्रियाएँ कीबोर्ड-जनित संकेतों से प्रतिरक्षित होती हैं। केवल अग्रभूमि
प्रक्रियाओं को पढ़ने की अनुमति है या, यदि उपयोगकर्ता stty tostop के साथ निर्दिष्ट करता है, तो लिखें
अंतिम स्टेशन। पृष्ठभूमि प्रक्रियाएं जो पढ़ने का प्रयास करती हैं (लिखें से लेकर जब stty tostop तक)।
प्रभावी है) टर्मिनल भेजा जाता है a सिगटिन (SIGTTOU) कर्नेल के टर्मिनल द्वारा संकेत
ड्राइवर, जो पकड़े जाने तक प्रक्रिया को निलंबित कर देता है।

यदि ऑपरेटिंग सिस्टम जिस पर खूब जोर से पीटना चल रहा है कार्य नियंत्रण का समर्थन करता है, खूब जोर से पीटना शामिल हैं
इसका उपयोग करने की सुविधाएँ। टाइप कर रहा हूँ निलंबित चरित्र (आमतौर पर ^Z, कंट्रोल-जेड) जबकि ए
प्रक्रिया चल रही है जिसके कारण वह प्रक्रिया रुक जाती है और नियंत्रण वापस आ जाता है खूब जोर से पीटना. टाइपिंग
la विलंबित निलंबित चरित्र (आमतौर पर ^Y, कंट्रोल-वाई) प्रक्रिया को रोकने का कारण बनता है
जब यह टर्मिनल से इनपुट पढ़ने का प्रयास करता है, और नियंत्रण को वापस लौटाया जाता है खूब जोर से पीटना
इसके बाद उपयोगकर्ता इसका उपयोग करके इस कार्य की स्थिति में हेरफेर कर सकता है bg में इसे जारी रखने का आदेश दिया
पृष्ठभूमि, fg इसे अग्रभूमि में जारी रखने का आदेश दें, या हत्या मारने का आदेश
यह। ए ^Z तुरंत प्रभाव से लागू होता है, और लंबित होने का अतिरिक्त दुष्प्रभाव होता है
आउटपुट और टाइपहेड को त्याग दिया जाएगा।

शेल में किसी कार्य को संदर्भित करने के कई तरीके हैं। चरित्र % एक का परिचय देता है
नौकरी विनिर्देश (जॉबस्पेक). नौकरी की नंबर n के रूप में संदर्भित किया जा सकता है %n. नौकरी भी हो सकती है
इसे प्रारंभ करने के लिए उपयोग किए गए नाम के उपसर्ग का उपयोग करने, या दिखाई देने वाले सबस्ट्रिंग का उपयोग करने के लिए संदर्भित किया जाता है
इसकी कमांड लाइन में। उदाहरण के लिए, % सीई रुके हुए को संदर्भित करता है ce काम। यदि कोई उपसर्ग मेल खाता है
एक से अधिक कार्य, खूब जोर से पीटना एक त्रुटि की रिपोर्ट करता है। का उपयोग करते हुए %? सीईदूसरी ओर, किसी को भी संदर्भित करता है
कार्य जिसमें स्ट्रिंग शामिल है ce इसकी कमांड लाइन में। यदि सबस्ट्रिंग एक से अधिक से मेल खाती है
काम, खूब जोर से पीटना एक त्रुटि की रिपोर्ट करता है। प्रतीक %% और %+ शेल की धारणा का संदर्भ लें
वर्तमान काम, जो कि अंतिम कार्य है जिसे तब रोका गया जब वह अग्रभूमि में था या शुरू हुआ था
पृष्ठभूमि। पिछला काम का उपयोग करके संदर्भित किया जा सकता है %-. यदि केवल एक ही है
काम, %+ और %- क्या दोनों का उपयोग उस नौकरी को संदर्भित करने के लिए किया जा सकता है। नौकरियों से संबंधित आउटपुट में (जैसे,
का उत्पादन नौकरियों कमांड), वर्तमान कार्य को हमेशा a के साथ चिह्नित किया जाता है +, और
ए के साथ पिछली नौकरी -. एक एकल % (बिना किसी संलग्न कार्य विशिष्टता के) को भी संदर्भित करता है
वर्तमान नौकरी.

बस किसी कार्य का नामकरण करके उसे अग्रभूमि में लाया जा सकता है: %1 के लिए एक पर्याय है ``एफजी
%1'', कार्य 1 को पृष्ठभूमि से अग्रभूमि में लाना। इसी प्रकार, ``%1 &'' resumes
पृष्ठभूमि में कार्य 1, के बराबर ``बी.जी %1''.

जब भी कोई कार्य स्थिति बदलता है तो शेल तुरंत सीख लेता है। सामान्य रूप से, खूब जोर से पीटना उसके होने तक प्रतीक्षा करता है
किसी कार्य की स्थिति में परिवर्तन की रिपोर्ट करने से पहले एक संकेत प्रिंट करने वाला है ताकि ऐसा न हो
किसी अन्य आउटपुट को बाधित करें। यदि -b विकल्प सेट बिल्टइन कमांड सक्षम है, खूब जोर से पीटना
ऐसे परिवर्तनों की तुरंत रिपोर्ट करें. कोई जाल चालू सिगचल्ड प्रत्येक बच्चे के लिए निष्पादित किया जाता है
बाहर निकलता है।

यदि बाहर निकलने का प्रयास किया जाए खूब जोर से पीटना तब बनाया जाता है जब नौकरियाँ बंद हो जाती हैं (या, यदि नौकरियाँ जाँचें खोल
का उपयोग करके विकल्प सक्षम किया गया है दुकान बिल्टिन, रनिंग), शेल एक चेतावनी प्रिंट करता है
संदेश, और, यदि नौकरियाँ जाँचें विकल्प सक्षम है, नौकरियों और उनकी स्थितियों को सूचीबद्ध करता है।
नौकरियों फिर कमांड का उपयोग उनकी स्थिति का निरीक्षण करने के लिए किया जा सकता है। यदि बाहर निकलने का दूसरा प्रयास है
बिना किसी हस्तक्षेप आदेश के बनाया गया, शेल कोई अन्य चेतावनी या कोई भी प्रिंट नहीं करता है
रुके हुए काम ख़त्म हो जाते हैं.

उत्साह


अंतःक्रियात्मक रूप से निष्पादित करते समय, खूब जोर से पीटना प्राथमिक संकेत प्रदर्शित करता है PS1 जब यह करने के लिए तैयार है
एक कमांड और द्वितीयक प्रॉम्प्ट पढ़ें PS2 जब इसे पूरा करने के लिए अधिक इनपुट की आवश्यकता होती है
आदेश। खूब जोर से पीटना इन प्रॉम्प्ट स्ट्रिंग्स को कुछ संख्याएँ सम्मिलित करके अनुकूलित करने की अनुमति देता है
बैकस्लैश-एस्केप्ड विशेष वर्ण जिन्हें निम्नानुसार डिकोड किया गया है:
\a एक ASCII घंटी चरित्र (07)
\d दिनांक "सप्ताहांत माह दिनांक" प्रारूप में (उदाहरण के लिए, "मंगलवार 26 मई")
\डी{प्रारूप}
la प्रारूप को पारित किया है स्ट्रैफ़टाइम(3) और परिणाम इसमें डाला गया है
शीघ्र स्ट्रिंग; एक खाली प्रारूप स्थानीय-विशिष्ट समय में परिणाम होता है
प्रतिनिधित्व. ब्रेसिज़ आवश्यक हैं
\e एक ASCII एस्केप कैरेक्टर (033)
\h पहले `.' तक होस्टनाम
\H होस्टनाम
\j वर्तमान में शेल द्वारा प्रबंधित नौकरियों की संख्या
\l शेल के टर्मिनल डिवाइस नाम का बेसनाम
\n नई पंक्ति
\r कैरिज रिटर्न
\s शेल का नाम, बेसनाम $0 (अंतिम के बाद का भाग
स्लैश)
\t वर्तमान समय 24-घंटे HH:MM:SS प्रारूप में
\T वर्तमान समय 12-घंटे HH:MM:SS प्रारूप में
\@ वर्तमान समय 12-घंटे पूर्वाह्न/अपराह्न प्रारूप में
\A वर्तमान समय 24-घंटे HH:MM प्रारूप में
\u वर्तमान उपयोगकर्ता का उपयोगकर्ता नाम
\v का संस्करण खूब जोर से पीटना (उदाहरण के लिए, 2.00)
\V का रिलीज खूब जोर से पीटना, संस्करण + पैच स्तर (जैसे, 2.00.0)
\w वर्तमान कार्यशील निर्देशिका, के साथ $ HOME टिल्ड के साथ संक्षिप्त (का उपयोग करता है
का मूल्य PROMPT_DIRTRIM चर)
\W वर्तमान कार्यशील निर्देशिका का बेसनाम, के साथ $ HOME ए के साथ संक्षिप्त
टिल्ड
\! इस आदेश का इतिहास संख्या
\# इस कमांड का कमांड नंबर
\$ यदि प्रभावी यूआईडी 0 है, a #, अन्यथा एक $
\NNN अष्टक संख्या के अनुरूप वर्ण NNN
\\ एक बैकस्लैश
\[ गैर-मुद्रण वर्णों का एक क्रम शुरू करें, जिसका उपयोग एंबेड करने के लिए किया जा सकता है
प्रॉम्प्ट में टर्मिनल नियंत्रण अनुक्रम
\] गैर-मुद्रण वर्णों का एक क्रम समाप्त करें

कमांड नंबर और हिस्ट्री नंबर आमतौर पर अलग-अलग होते हैं: ए का हिस्ट्री नंबर
कमांड इतिहास सूची में इसकी स्थिति है, जिसमें से पुनर्स्थापित कमांड शामिल हो सकते हैं
इतिहास फ़ाइल (देखें इतिहास नीचे), जबकि कमांड संख्या अनुक्रम में स्थिति है
वर्तमान शेल सत्र के दौरान निष्पादित आदेशों की संख्या। स्ट्रिंग डिकोड होने के बाद, यह है
पैरामीटर विस्तार, कमांड प्रतिस्थापन, अंकगणितीय विस्तार और उद्धरण के माध्यम से विस्तारित
निष्कासन, के मूल्य के अधीन शीघ्रवर शेल विकल्प (का विवरण देखें)।
दुकान के अंतर्गत आदेश शेल अंतर्निहित कमानों नीचे).

पढ़ने के लिए लाइन


यह वह लाइब्रेरी है जो इंटरैक्टिव शेल का उपयोग करते समय रीडिंग इनपुट को संभालती है, जब तक कि
--संपादन नहीं शेल मंगलाचरण पर विकल्प दिया गया है। का उपयोग करते समय लाइन संपादन का भी उपयोग किया जाता है
-e विकल्प पढ़ना निर्मित. डिफ़ॉल्ट रूप से, लाइन संपादन कमांड उनके समान होते हैं
Emacs का. एक vi-स्टाइल लाइन संपादन इंटरफ़ेस भी उपलब्ध है। लाइन एडिटिंग हो सकती है
का उपयोग करके किसी भी समय सक्षम किया जा सकता है -o Emacs or -o vi के विकल्प सेट बिल्टिन (देखें शेल
अंतर्निहित कमानों नीचे)। शेल चलने के बाद लाइन संपादन बंद करने के लिए, का उपयोग करें +o
Emacs or +o vi के विकल्प सेट बिल्टिन।

ReadLine नोटेशन
इस अनुभाग में, कीस्ट्रोक्स को दर्शाने के लिए Emacs-शैली नोटेशन का उपयोग किया जाता है। नियंत्रण कुंजी हैं
C द्वारा निरूपित-कुंजी, उदाहरण के लिए, Cn का अर्थ है कंट्रोल-एन। इसी प्रकार, मेटा कुंजियाँ M द्वारा निरूपित की जाती हैं-कुंजी,
तो Mx का मतलब मेटा-एक्स है। (कीबोर्ड पर बिना a मेटा कुंजी, एम-x मतलब ईएससी x, यानी, दबाएँ
भागने की कुंजी तो x चाबी। यह ESC को बनाता है मेटा उपसर्ग. संयोजन एमसी-x साधन
ईएससी-नियंत्रण-x, या एस्केप कुंजी दबाएं, फिर दबाते समय कंट्रोल कुंजी दबाए रखें x
चाभी।)

रीडलाइन कमांड को संख्यात्मक दिया जा सकता है तर्क, जो आम तौर पर दोहराई गई गिनती के रूप में कार्य करता है।
हालाँकि, कभी-कभी, यह तर्क का संकेत है जो महत्वपूर्ण है। पासिंग ए
किसी आदेश के प्रति नकारात्मक तर्क जो आगे की दिशा में कार्य करता है (जैसे, मार-रेखा) का कारण बनता है
वह पीछे की दिशा में कार्य करने का आदेश देता है। आदेश जिनका आचरण तर्कों से
इससे विचलन नीचे नोट किया गया है।

जब किसी कमांड का वर्णन इस प्रकार किया जाता है हत्या टेक्स्ट, हटाया गया टेक्स्ट संभावित भविष्य के लिए सहेजा जाता है
पुनर्प्राप्ति (हाँक रहा है). मारे गए पाठ को एक में सहेजा गया है हत्या अंगूठी. लगातार हत्याओं का कारण
पाठ को एक इकाई में एकत्रित किया जाना है, जिसे एक ही बार में पूरा किया जा सकता है। जो आदेश देता है
टेक्स्ट को ख़त्म न करें किल रिंग पर टेक्स्ट के हिस्सों को अलग करें।

ReadLine आरंभीकरण
इनिशियलाइज़ेशन फ़ाइल में कमांड डालकर रीडलाइन को अनुकूलित किया जाता है इनपुटआरसी फ़ाइल).
इस फ़ाइल का नाम के मान से लिया गया है INPUTRC चर। यदि वह चर
अनसेट है, डिफ़ॉल्ट है ~ / .inputrc. जब एक प्रोग्राम जो रीडलाइन लाइब्रेरी का उपयोग करता है
प्रारंभ होता है, आरंभीकरण फ़ाइल पढ़ी जाती है, और कुंजी बाइंडिंग और वेरिएबल सेट किए जाते हैं।
रीडलाइन आरंभीकरण फ़ाइल में केवल कुछ बुनियादी निर्माणों की अनुमति है। खाली
पंक्तियों को नजरअंदाज कर दिया जाता है। ए से शुरू होने वाली पंक्तियाँ # टिप्पणियाँ हैं. ए से शुरू होने वाली पंक्तियाँ $
सशर्त निर्माणों को इंगित करें। अन्य पंक्तियाँ कुंजी बाइंडिंग और वेरिएबल सेटिंग्स को दर्शाती हैं।

डिफ़ॉल्ट कुंजी-बाइंडिंग को इसके साथ बदला जा सकता है इनपुटआरसी फ़ाइल। अन्य प्रोग्राम जो उपयोग करते हैं
यह लाइब्रेरी अपने स्वयं के कमांड और बाइंडिंग जोड़ सकती है।

उदाहरण के लिए, रखना

एम-कंट्रोल-यू: सार्वभौमिक-तर्क
or
सी-मेटा-यू: सार्वभौमिक-तर्क
में इनपुटआरसी एमसीयू रीडलाइन कमांड निष्पादित करेगा सार्वभौमिक-तर्क.

निम्नलिखित प्रतीकात्मक चरित्र नाम पहचाने जाते हैं: झाड़ना, DEL, ESC, एलएफडी, नई पंक्ति,
रेत, वापसी, छठे वेतन आयोग, अंतरिक्ष, तथा टैब.

कमांड नामों के अलावा, रीडलाइन कुंजियों को एक स्ट्रिंग से बांधने की अनुमति देती है
कुंजी दबाए जाने पर डाला जाता है (a मैक्रो).

ReadLine कुंजी बाइंडिंग
में कुंजी बाइंडिंग को नियंत्रित करने के लिए सिंटैक्स इनपुटआरसी फ़ाइल सरल है. वह सब कुछ है
आवश्यक है कमांड का नाम या मैक्रो का टेक्स्ट और एक कुंजी अनुक्रम जिसके लिए यह आवश्यक है
बाध्य होना चाहिए. नाम को दो तरीकों में से एक में निर्दिष्ट किया जा सकता है: एक प्रतीकात्मक कुंजी नाम के रूप में,
संभवतः के साथ मेटा or नियंत्रण- उपसर्ग, या एक कुंजी अनुक्रम के रूप में।

प्रपत्र का उपयोग करते समय मुख्य नाम:समारोह-नाम or मैक्रो, मुख्य नाम एक कुंजी का नाम वर्तनी है
अंग्रेजी में बाहर. उदाहरण के लिए:

नियंत्रण-यू: सार्वभौमिक-तर्क
मेटा-रूबाउट: बैकवर्ड-किल-वर्ड
नियंत्रण-ओ: "> आउटपुट"

उपरोक्त उदाहरण में, घन फ़ंक्शन से बंधा हुआ है सार्वभौमिक-तर्क, एम-DEL स्वाभाविक है
समारोह पिछड़ा-मार-शब्द, तथा सह दाईं ओर व्यक्त मैक्रो को चलाने के लिए बाध्य है
हाथ की ओर (अर्थात, टेक्स्ट ``>आउटपुट'' को लाइन में डालने के लिए)।

दूसरे रूप में, "कीसेक":समारोह-नाम or मैक्रो, keyseq इससे अलग मुख्य नाम ऊपर में
संपूर्ण कुंजी अनुक्रम को दर्शाने वाली स्ट्रिंग्स को अनुक्रम रखकर निर्दिष्ट किया जा सकता है
दोहरे उद्धरण चिह्नों के भीतर. कुछ GNU Emacs स्टाइल कुंजी एस्केप का उपयोग निम्नलिखित के अनुसार किया जा सकता है
उदाहरण, लेकिन प्रतीकात्मक चरित्र नाम पहचाने नहीं जाते।

"\Cu": सार्वभौमिक-तर्क
"\Cx\Cr": पुनः पढ़ें-इनिट-फ़ाइल
"\e[11~": "फ़ंक्शन कुंजी 1"

इस उदाहरण में, घन फिर से फ़ंक्शन के लिए बाध्य है सार्वभौमिक-तर्क. Cx करोड़ बाध्य है
समारोह के लिए पुनः पढ़ें-init-फ़ाइल, तथा ESC [ 1 1 ~ टेक्स्ट ``फ़ंक्शन' डालने के लिए बाध्य है
कुंजी 1''.

GNU Emacs स्टाइल एस्केप सीक्वेंस का पूरा सेट है
\सी- नियंत्रण उपसर्ग
\एम- मेटा उपसर्ग
\e एक भागने का पात्र
\\ बैकस्लैश
\" शाब्दिक "
\' शाब्दिक '

GNU Emacs स्टाइल एस्केप अनुक्रमों के अलावा, बैकस्लैश एस्केप का दूसरा सेट है
बिकाऊ:
\a चेतावनी (घंटी)
\b बैकस्पेस
\d हटाना
\f फ़ीड बनाएं
\n नई पंक्ति
\r कैरिज रिटर्न
\t क्षैतिज टैब
\v लंबवत टैब
\NNN आठ-बिट वर्ण जिसका मान अष्टक मान है NNN (एक से तीन
अंक)
\xHH आठ-बिट वर्ण जिसका मान हेक्साडेसिमल मान है HH (एक अथवा दो
हेक्स अंक)

मैक्रो का टेक्स्ट दर्ज करते समय, इंगित करने के लिए सिंगल या डबल कोट्स का उपयोग किया जाना चाहिए
स्थूल परिभाषा. गैर-उद्धृत पाठ को एक फ़ंक्शन नाम माना जाता है। स्थूल शरीर में,
ऊपर वर्णित बैकस्लैश एस्केप का विस्तार किया गया है। बैकस्लैश किसी अन्य चरित्र को उद्धृत करेगा
मैक्रो टेक्स्ट में, " और ' सहित।

खूब जोर से पीटना वर्तमान रीडलाइन कुंजी बाइंडिंग को प्रदर्शित या संशोधित करने की अनुमति देता है बाँध
अंतर्निहित आदेश. का उपयोग करके इंटरैक्टिव उपयोग के दौरान संपादन मोड को स्विच किया जा सकता है -o
विकल्प सेट बिल्टिन कमांड (देखें) शेल अंतर्निहित कमानों नीचे).

ReadLine चर
रीडलाइन में वेरिएबल हैं जिनका उपयोग इसके व्यवहार को और अधिक अनुकूलित करने के लिए किया जा सकता है। एक चर हो सकता है
में सेट किया जाए इनपुटआरसी प्रपत्र के विवरण के साथ फाइल करें

सेट चर का नाम मूल्य

जहां उल्लेख किया गया है उसे छोड़कर, रीडलाइन वैरिएबल मान ले सकते हैं On or बंद (बिना किसी शर्म के
मामला)। अपरिचित चर नामों को नजरअंदाज कर दिया जाता है। जब एक वैरिएबल मान पढ़ा जाता है, तो खाली या
शून्य मान, "चालू" (केस-असंवेदनशील), और "1" के बराबर हैं On. अन्य सभी मूल्य हैं
के बराबर बंद. चर और उनके डिफ़ॉल्ट मान हैं:

घंटी शैली (सुनने योग्य)
यह नियंत्रित करता है कि जब रीडलाइन टर्मिनल घंटी बजाना चाहती है तो क्या होता है। यदि सेट किया गया है
कोई नहीं, रीडलाइन कभी भी घंटी नहीं बजाती। यदि सेट किया गया है दिखाई, रीडलाइन दृश्यमान का उपयोग करता है
यदि कोई उपलब्ध हो तो घंटी बजाओ। यदि सेट किया गया है सुनाई देने योग्य, रीडलाइन रिंग करने का प्रयास करती है
टर्मिनल की घंटी.
बाइंड-ट्टी-विशेष-वर्ण (पर)
अगर करने के लिए सेट है On, रीडलाइन विशेष रूप से उपचारित नियंत्रण वर्णों को बांधने का प्रयास करती है
कर्नेल के टर्मिनल ड्राइवर को उनके रीडलाइन समकक्षों के लिए।
रंगीन आँकड़े (बंद)
अगर करने के लिए सेट है On, रीडलाइन विभिन्न रंगों का उपयोग करके संभावित पूर्णताएँ प्रदर्शित करती है
उनकी फ़ाइल प्रकार इंगित करें. रंग परिभाषाएँ के मान से ली गई हैं
LS_रंग वातावरण विविधता।
टिप्पणी-शुरू (``#'')
वह स्ट्रिंग जो रीडलाइन के समय डाली जाती है सम्मिलित-टिप्पणी आदेश निष्पादित किया जाता है।
यह आदेश बाध्य है एम-# Emacs मोड में और करने के लिए # vi कमांड मोड में।
पूर्णता-अनदेखा-मामला (बंद)
अगर करने के लिए सेट है On, रीडलाइन फ़ाइल नाम मिलान और पूर्णता निष्पादित करती है
केस-असंवेदनशील फैशन।
पूर्णता-उपसर्ग-प्रदर्शन-लंबाई (0)
संभावित पूर्णताओं की सूची के सामान्य उपसर्ग के वर्णों की लंबाई
जिसे बिना संशोधन के प्रदर्शित किया जाता है। जब शून्य से अधिक मान पर सेट किया जाता है,
इस मान से अधिक लंबे सामान्य उपसर्गों को इलिप्सिस से बदल दिया जाता है
संभावित पूर्णताएँ प्रदर्शित करना।
पूर्णता-क्वेरी-आइटम (100)
यह निर्धारित करता है कि उपयोगकर्ता से संभावित संख्या देखने के बारे में कब पूछा जाता है
द्वारा उत्पन्न पूर्णताएँ संभव-पूर्णताएँ आज्ञा। इसे किसी पर भी सेट किया जा सकता है
पूर्णांक मान शून्य से अधिक या उसके बराबर। यदि संभावित पूर्णताओं की संख्या
इस चर के मान से अधिक या उसके बराबर है, तो उपयोगकर्ता से पूछा जाता है कि क्या
या वह उन्हें देखना नहीं चाहता; अन्यथा वे बस टर्मिनल पर सूचीबद्ध हैं।
कन्वर्ट-मेटा (पर)
अगर करने के लिए सेट है On, रीडलाइन आठवें बिट सेट वाले वर्णों को ASCII में परिवर्तित कर देगी
आठवें बिट को हटाकर और एक एस्केप कैरेक्टर (इन) उपसर्ग करके कुंजी अनुक्रम
प्रभाव, पलायन को के रूप में उपयोग करना मेटा उपसर्ग).
अक्षम-समापन (बंद)
अगर करने के लिए सेट है On, रीडलाइन शब्द पूर्णता को बाधित करेगी। समापन पात्र होंगे
लाइन में ऐसे डाला गया मानो उन्हें मैप किया गया हो स्व-सम्मिलित करें.
संपादन-मोड (ईएमएसीएस)
नियंत्रित करता है कि रीडलाइन समान कुंजी बाइंडिंग के सेट से शुरू होती है या नहीं Emacs or vi.
संपादन-मोड या तो सेट किया जा सकता है Emacs or vi.
प्रतिध्वनि-नियंत्रण-अक्षर (पर)
कब सेट किया गया On, ऑपरेटिंग सिस्टम पर जो इंगित करता है कि वे इसका समर्थन करते हैं, रीडलाइन गूँजती है
कीबोर्ड से उत्पन्न सिग्नल के अनुरूप एक अक्षर।
सक्षम-कीपैड (बंद)
कब सेट किया गया On, रीडलाइन एप्लिकेशन कीपैड होने पर उसे सक्षम करने का प्रयास करेगी
बुलाया। कुछ प्रणालियों को तीर कुंजियाँ सक्षम करने के लिए इसकी आवश्यकता होती है।
सक्षम-मेटा-कुंजी (पर)
कब सेट किया गया On, रीडलाइन टर्मिनल पर किसी भी मेटा संशोधक कुंजी को सक्षम करने का प्रयास करेगी
बुलाए जाने पर समर्थन करने का दावा करता है। कई टर्मिनलों पर मेटा कुंजी का उपयोग किया जाता है
आठ-बिट अक्षर भेजें.
विस्तार-टिल्डे (बंद)
अगर करने के लिए सेट है On, टिल्ड विस्तार तब किया जाता है जब रीडलाइन शब्द पूरा करने का प्रयास करती है।
इतिहास-संरक्षण-बिंदु (बंद)
अगर करने के लिए सेट है On, इतिहास कोड प्रत्येक पर एक ही स्थान पर बिंदु रखने का प्रयास करता है
हिस्ट्री लाइन के साथ पुनः प्राप्त किया गया पिछला-इतिहास or अगला-इतिहास.
इतिहास-आकार (0)
इतिहास सूची में सहेजी गई इतिहास प्रविष्टियों की अधिकतम संख्या निर्धारित करें। यदि सेट किया गया है
शून्य, सभी मौजूदा इतिहास प्रविष्टियाँ हटा दी जाती हैं और कोई नई प्रविष्टियाँ सहेजी नहीं जाती हैं। अगर
शून्य से कम मान पर सेट, इतिहास प्रविष्टियों की संख्या सीमित नहीं है। द्वारा
डिफ़ॉल्ट, इतिहास प्रविष्टियों की संख्या सीमित नहीं है।
क्षैतिज-स्क्रॉल-मोड (बंद)
कब सेट किया गया On, इनपुट को स्क्रॉल करते हुए डिस्प्ले के लिए रीडलाइन को एक लाइन का उपयोग करता है
एकल स्क्रीन लाइन पर क्षैतिज रूप से जब यह स्क्रीन की चौड़ाई से अधिक लंबी हो जाती है
एक नई लाइन में लपेटने के बजाय।
इनपुट-मेटा (बंद)
अगर करने के लिए सेट है On, रीडलाइन आठ-बिट इनपुट को सक्षम करेगी (अर्थात, यह स्ट्रिप नहीं करेगी
इसके द्वारा पढ़े जाने वाले वर्णों से उच्च बिट), भले ही टर्मिनल इसका दावा करता हो
संभाल सकना। नाम मेटा-ध्वज इस वेरिएबल का पर्यायवाची है।
खोज-टर्मिनेटर (``सी-[सी-जे'')
वर्णों की वह श्रृंखला जिसके बिना वृद्धिशील खोज समाप्त होनी चाहिए
बाद में चरित्र को एक कमांड के रूप में निष्पादित करना। यदि यह वेरिएबल नहीं रहा है
एक मान दिया गया है, अक्षर ESC और सी जे एक वृद्धिशील खोज समाप्त कर देगा.
कीमैप (ईएमएसीएस)
वर्तमान रीडलाइन कीमैप सेट करें। मान्य कीमैप नामों का सेट है इमैक,
Emacs-मानक, Emacs-मेटा, Emacs-CTLX, vi, vi-कमांड, तथा vi-डालें. vi is
के बराबर vi-कमांड; Emacs के बराबर है Emacs-मानक. डिफ़ॉल्ट मान
is Emacs; का मान है संपादन-मोड डिफ़ॉल्ट कीमैप को भी प्रभावित करता है।
कीसेक-टाइमआउट (500)
अवधि निर्दिष्ट करता है ReadLine अस्पष्ट पढ़ते समय किसी पात्र की प्रतीक्षा करेंगे
कुंजी अनुक्रम (वह जो इनपुट रीड सो का उपयोग करके एक पूर्ण कुंजी अनुक्रम बना सकता है
दूर, या लंबे कुंजी अनुक्रम को पूरा करने के लिए अतिरिक्त इनपुट ले सकता है)। यदि कोई इनपुट नहीं है
समय समाप्ति के भीतर प्राप्त होता है, ReadLine छोटी लेकिन पूर्ण कुंजी का उपयोग करेगा
अनुक्रम। मान मिलीसेकंड में निर्दिष्ट है, इसलिए 1000 का मान इसका मतलब है
ReadLine अतिरिक्त इनपुट के लिए एक सेकंड प्रतीक्षा करेंगे. यदि यह वेरिएबल a पर सेट है
मान शून्य से कम या उसके बराबर, या गैर-संख्यात्मक मान, ReadLine इंतजार करेंगे
जब तक यह तय करने के लिए दूसरी कुंजी नहीं दबाई जाती कि कौन सा कुंजी अनुक्रम पूरा करना है।
चिह्न-निर्देशिकाएँ (पर)
अगर करने के लिए सेट है On, पूर्ण निर्देशिका नामों में एक स्लैश जोड़ा गया है।
चिह्नित-संशोधित-पंक्तियाँ (बंद)
अगर करने के लिए सेट है On, संशोधित की गई इतिहास पंक्तियाँ पूर्ववर्ती के साथ प्रदर्शित की जाती हैं
तारांकन (*).
मार्क-सिम्लिंक्ड-निर्देशिकाएँ (बंद)
अगर करने के लिए सेट है On, पूर्ण नाम जो निर्देशिकाओं के प्रतीकात्मक लिंक हैं उनमें एक स्लैश है
संलग्न (मूल्य के अधीन)। चिह्न-निर्देशिकाएँ).
मिलान-छिपी-फ़ाइलें (पर)
यह वेरिएबल, जब सेट किया जाता है On, उन फ़ाइलों से मिलान करने के लिए रीडलाइन का कारण बनता है जिनके नाम शुरू होते हैं
एक `.' के साथ (छिपी हुई फ़ाइलें) फ़ाइल नाम पूरा करते समय। यदि सेट किया गया है बंद,
अग्रणी `.' पूरा करने के लिए उपयोगकर्ता द्वारा फ़ाइल नाम प्रदान किया जाना चाहिए।
मेनू-पूर्ण-प्रदर्शन-उपसर्ग (बंद)
अगर करने के लिए सेट है On, मेनू पूर्णता संभावित की सूची का सामान्य उपसर्ग प्रदर्शित करती है
सूची के माध्यम से साइकिल चलाने से पहले पूर्णताएं (जो खाली हो सकती हैं)।
आउटपुट-मेटा (बंद)
अगर करने के लिए सेट है On, रीडलाइन आठवें बिट सेट वाले वर्णों को सीधे प्रदर्शित करेगी
मेटा-प्रीफ़िक्स्ड एस्केप अनुक्रम के बजाय।
पृष्ठ-पूर्णताएँ (पर)
अगर करने के लिए सेट है On, रीडलाइन एक आंतरिक का उपयोग करता है अधिक-एक स्क्रीनफुल प्रदर्शित करने के लिए पेजर की तरह
एक समय में संभावित पूर्णताएँ।
प्रिंट-पूर्णता-क्षैतिज रूप से (बंद)
अगर करने के लिए सेट है On, रीडलाइन क्षैतिज रूप से क्रमबद्ध मिलानों के साथ पूर्णताएं प्रदर्शित करेगी
स्क्रीन के नीचे की बजाय वर्णमाला क्रम में।
रिवर्ट-ऑल-एट-न्यूलाइन (बंद)
अगर करने के लिए सेट है On, रीडलाइन कब लौटने से पहले इतिहास पंक्तियों में सभी परिवर्तनों को पूर्ववत कर देगी
स्वीकार-पंक्ति निष्पादित किया जाता है। डिफ़ॉल्ट रूप से, इतिहास पंक्तियों को संशोधित और बनाए रखा जा सकता है
कॉलों के दौरान अलग-अलग पूर्ववत सूचियाँ ReadLine.
अगर अस्पष्ट है तो सब कुछ दिखाओ (बंद)
यह पूर्णता कार्यों के डिफ़ॉल्ट व्यवहार को बदल देता है। यदि सेट किया गया है On, शब्द
जिनके एक से अधिक संभावित समापन होने के कारण मिलानों को सूचीबद्ध किया जाता है
घंटी बजाने के बजाय तुरंत।
अगर-अनसंशोधित है तो सब कुछ दिखाओ (बंद)
यह पूर्णता कार्यों के डिफ़ॉल्ट व्यवहार को उसी तरह से बदल देता है
सेवा मेरे अगर अस्पष्ट है तो सब कुछ दिखाओ. अगर सेट करें On, ऐसे शब्द जिनमें एक से अधिक संभव हैं
किसी भी संभावित आंशिक पूर्णता के बिना पूर्णता (संभावित पूर्णता नहीं होती है
एक सामान्य उपसर्ग साझा करें) के बजाय मैचों को तुरंत सूचीबद्ध किया जाए
घंटी बजाना.
शो-मोड-इन-प्रॉम्प्ट (बंद)
अगर करने के लिए सेट है On, संपादन को इंगित करने वाले प्रॉम्प्ट की शुरुआत में एक अक्षर जोड़ें
मोड: एमएसीएस (@), vi कमांड (:) या vi इंसर्शन (+)।
छोड़ें-पूर्ण-पाठ (बंद)
अगर करने के लिए सेट है On, यह एकल सम्मिलित करते समय डिफ़ॉल्ट पूर्णता व्यवहार को बदल देता है
पंक्ति में मिलान करें. यह केवल मध्य में पूर्णता निष्पादित करते समय सक्रिय होता है
शब्द। यदि सक्षम किया गया है, तो रीडलाइन पूर्णता से वर्ण सम्मिलित नहीं करती है
शब्द के पूरा होने पर बिंदु दर बिंदु वर्णों का मिलान करें, इसलिए शब्द के भाग
कर्सर का अनुसरण डुप्लिकेट नहीं किया गया है।
दृश्य-आँकड़े (बंद)
अगर करने के लिए सेट है On, एक वर्ण जो फ़ाइल के प्रकार को दर्शाता है जैसा कि रिपोर्ट किया गया है स्टेट(2) संलग्न है
संभावित पूर्णताओं को सूचीबद्ध करते समय फ़ाइल नाम पर।

ReadLine सशर्त निर्माणों
रीडलाइन सशर्त संकलन सुविधाओं की भावना के समान एक सुविधा लागू करता है
सी प्रीप्रोसेसर जो कुंजी बाइंडिंग और वेरिएबल सेटिंग्स को निष्पादित करने की अनुमति देता है
परीक्षणों का परिणाम. इसमें चार पार्सर निर्देशों का उपयोग किया गया है।

$ अगर RSI $ अगर निर्माण संपादन मोड के आधार पर बाइंडिंग बनाने की अनुमति देता है
टर्मिनल का उपयोग किया जा रहा है, या रीडलाइन का उपयोग करने वाला एप्लिकेशन। परीक्षण का पाठ
पंक्ति के अंत तक फैला हुआ है; इसे अलग करने के लिए किसी पात्र की आवश्यकता नहीं है।

मोड RSI मोड= का रूप $ अगर निर्देश का उपयोग यह जांचने के लिए किया जाता है कि रीडलाइन चालू है या नहीं
Emacs या vi मोड। इसका उपयोग के साथ संयोजन में किया जा सकता है सेट कीमैप
उदाहरण के लिए, बाइंडिंग सेट करने के लिए कमांड Emacs-मानक और emacs-ctlx
कीमैप्स केवल तभी जब रीडलाइन इमैक मोड में शुरू हो रही हो।

अवधि RSI पद= फॉर्म का उपयोग टर्मिनल-विशिष्ट कुंजी बाइंडिंग को शामिल करने के लिए किया जा सकता है,
शायद टर्मिनल की फ़ंक्शन कुंजियों द्वारा कुंजी अनुक्रम आउटपुट को बांधने के लिए।
के दाहिनी ओर शब्द = के दोनों पूर्ण नाम के विरुद्ध परीक्षण किया जाता है
टर्मिनल और टर्मिनल नाम का भाग पहले से पहले -। इस
की अनुमति देता है सूरज दोनों का मिलान करने के लिए सूरज और सूर्य-cmd, उदाहरण के लिए।

आवेदन
RSI आवेदन कंस्ट्रक्ट का उपयोग एप्लिकेशन-विशिष्ट सेटिंग्स को शामिल करने के लिए किया जाता है।
रीडलाइन लाइब्रेरी का उपयोग करने वाला प्रत्येक प्रोग्राम सेट करता है आवेदन नाम, और एक
आरंभीकरण फ़ाइल किसी विशेष मान के लिए परीक्षण कर सकती है। इसका उपयोग किया जा सकता है
किसी विशिष्ट प्रोग्राम के लिए उपयोगी कार्यों के लिए मुख्य अनुक्रमों को बाइंड करना। के लिए
उदाहरण के लिए, निम्न आदेश एक कुंजी अनुक्रम जोड़ता है जो वर्तमान को उद्धृत करता है
या पिछले शब्द में खूब जोर से पीटना:

$ अगर खूब जोर से पीटना
# वर्तमान या पिछले शब्द को उद्धृत करें
"\C-xq": "\eb\"\ef\""
$endif

$endif यह आदेश, जैसा कि पिछले उदाहरण में देखा गया है, एक को समाप्त करता है $ अगर आदेश।

$और की इस शाखा में कमांड $ अगर परीक्षण विफल होने पर निर्देश निष्पादित किया जाता है।

$शामिल हैं
यह निर्देश एक एकल फ़ाइल नाम को तर्क के रूप में लेता है और आदेशों को पढ़ता है
उस फ़ाइल से बाइंडिंग. उदाहरण के लिए, निम्नलिखित निर्देश पढ़ेंगे
/etc/inputrc:

$शामिल हैं /etc/inputrc

खोजना
रीडलाइन कमांड इतिहास के माध्यम से खोज करने के लिए कमांड प्रदान करता है (देखें)। इतिहास नीचे)
निर्दिष्ट स्ट्रिंग वाली पंक्तियों के लिए। दो खोज मोड हैं: वृद्धिशील और
वृद्धिशील.

उपयोगकर्ता द्वारा खोज स्ट्रिंग टाइप करना समाप्त करने से पहले वृद्धिशील खोजें शुरू हो जाती हैं। प्रत्येक के रूप में
खोज स्ट्रिंग का वर्ण टाइप किया गया है, रीडलाइन इतिहास से अगली प्रविष्टि प्रदर्शित करती है
अब तक टाइप की गई स्ट्रिंग से मिलान। वृद्धिशील खोज के लिए केवल उतने ही वर्णों की आवश्यकता होती है
वांछित इतिहास प्रविष्टि ढूँढ़ने के लिए आवश्यकतानुसार। के मान में मौजूद अक्षर
खोज-टर्मिनेटर वेरिएबल का उपयोग वृद्धिशील खोज को समाप्त करने के लिए किया जाता है। कि अगर
वेरिएबल को कोई मान नहीं दिया गया है जिससे एस्केप और कंट्रोल-जे अक्षर समाप्त हो जाएंगे
एक वृद्धिशील खोज. कंट्रोल-जी एक वृद्धिशील खोज को निरस्त कर देगा और पुनर्स्थापित कर देगा
मूल पंक्ति. जब खोज समाप्त हो जाती है, तो खोज युक्त इतिहास प्रविष्टि
स्ट्रिंग वर्तमान लाइन बन जाती है।

इतिहास सूची में अन्य मिलान वाली प्रविष्टियाँ ढूँढ़ने के लिए, कंट्रोल-एस या कंट्रोल-आर टाइप करें
उपयुक्त। यह अगली प्रविष्टि के लिए इतिहास में पीछे या आगे की खोज करेगा
अब तक टाइप की गई खोज स्ट्रिंग से मिलान। रीडलाइन से जुड़ा कोई अन्य मुख्य अनुक्रम
कमांड खोज को समाप्त कर देगा और उस कमांड को निष्पादित करेगा। उदाहरण के लिए, ए नई पंक्ति मर्जी
खोज समाप्त करें और लाइन स्वीकार करें, जिससे इतिहास से कमांड निष्पादित हो
सूची।

रीडलाइन अंतिम वृद्धिशील खोज स्ट्रिंग को याद रखती है। यदि दो कंट्रोल-रु टाइप किए गए हैं
नई खोज स्ट्रिंग, किसी भी याद की गई खोज को परिभाषित करने वाले किसी भी हस्तक्षेप करने वाले वर्ण के बिना
स्ट्रिंग का प्रयोग किया जाता है.

गैर-वृद्धिशील खोजें खोज शुरू करने से पहले संपूर्ण खोज स्ट्रिंग को पढ़ती हैं
इतिहास की पंक्तियों का मिलान। खोज स्ट्रिंग उपयोगकर्ता द्वारा टाइप की जा सकती है या इसका हिस्सा हो सकती है
वर्तमान पंक्ति की सामग्री.

ReadLine आदेश नाम
निम्नलिखित कमांडों के नाम और डिफ़ॉल्ट कुंजी अनुक्रमों की एक सूची है
जिससे वे बंधे हुए हैं। बिना किसी कुंजी अनुक्रम के कमांड नाम अनबाउंड हैं
गलती करना। निम्नलिखित विवरण में, बिन्दु वर्तमान कर्सर स्थिति को संदर्भित करता है, और
निशान द्वारा सहेजी गई कर्सर स्थिति को संदर्भित करता है सेट-मार्क आज्ञा। के बीच का पाठ
बिंदु और चिह्न को कहा जाता है क्षेत्र.

कमानों एसटी चलती
शुरुआत-लाइन की (सीए)
वर्तमान लाइन के आरंभ में जाएँ.
पंक्ति का अंत (सीई)
पंक्ति के अंत तक जाएँ.
फॉरवर्ड-चार (सीएफ)
एक किरदार को आगे बढ़ाओ.
पिछड़ा-चार (सीबी)
किसी वर्ण को पीछे ले जाएँ.
अग्रेषित शब्द (एमएफ)
अगले शब्द के अंत तक आगे बढ़ें। शब्द अक्षरांकीय से बने होते हैं
अक्षर (अक्षर और अंक)।
पिछड़ा-शब्द (एमबी)
वर्तमान या पिछले शब्द की शुरुआत पर वापस जाएँ। शब्दों की रचना होती है
अल्फ़ान्यूमेरिक वर्ण (अक्षर और अंक)।
शेल-फ़ॉरवर्ड-शब्द
अगले शब्द के अंत तक आगे बढ़ें। शब्दों को गैर-उद्धृत शेल द्वारा सीमांकित किया जाता है
रूपक।
शैल-पिछला-शब्द
वर्तमान या पिछले शब्द की शुरुआत पर वापस जाएँ। शब्दों को सीमांकित किया जाता है
गैर-उद्धृत शेल मेटाकैरेक्टर।
साफ़ स्क्रीन (सीएल)
स्क्रीन के शीर्ष पर वर्तमान लाइन को छोड़कर स्क्रीन साफ़ करें। एक साथ
तर्क, स्क्रीन को साफ़ किए बिना वर्तमान लाइन को ताज़ा करें।
पुनः-वर्तमान-रेखा
वर्तमान लाइन को ताज़ा करें.

कमानों एसटी जोड़ तोड़ la इतिहास
स्वीकार-पंक्ति (नई पंक्ति, वापस करना)
कर्सर कहीं भी हो, लाइन को स्वीकार करें। यदि यह पंक्ति रिक्त नहीं है, तो जोड़ें
इसे इतिहास की सूची के अनुसार राज्य की सूची में शामिल किया गया है इतिहास नियंत्रण चर। अगर
लाइन एक संशोधित इतिहास लाइन है, तो इतिहास लाइन को उसके मूल में पुनर्स्थापित करें
राज्य.
पिछला-इतिहास (सीपी)
सूची में पीछे जाकर, इतिहास सूची से पिछला आदेश प्राप्त करें।
अगला-इतिहास (सीएन)
सूची में आगे बढ़ते हुए, इतिहास सूची से अगला आदेश प्राप्त करें।
इतिहास की शुरुआत (एम-<)
इतिहास की पहली पंक्ति पर जाएँ।
समाप्ति की इतिहास (एम->)
इनपुट इतिहास के अंत में जाएँ, यानी, वर्तमान में दर्ज की जा रही पंक्ति।
रिवर्स-सर्च-इतिहास (करोड़)
वर्तमान लाइन से शुरू करके पीछे की ओर खोजें और इतिहास के माध्यम से 'ऊपर' की ओर बढ़ें
ज़रूरी। यह एक वृद्धिशील खोज है.
अग्रेषित-खोज-इतिहास (सीएस)
वर्तमान लाइन से प्रारंभ करके इतिहास में 'नीचे' की ओर बढ़ते हुए आगे खोजें
जैसा कि आवश्यक है। यह एक वृद्धिशील खोज है.
गैर-वृद्धिशील-रिवर्स-खोज-इतिहास (एमपी)
गैर-का उपयोग करके वर्तमान पंक्ति से शुरू करके इतिहास में पीछे की ओर खोजें
उपयोगकर्ता द्वारा आपूर्ति की गई स्ट्रिंग के लिए वृद्धिशील खोज।
गैर-वृद्धिशील-आगे-खोज-इतिहास (एमएन)
किसी स्ट्रिंग के लिए गैर-वृद्धिशील खोज का उपयोग करके इतिहास में आगे खोजें
उपयोगकर्ता द्वारा आपूर्ति की गई.
इतिहास-खोज-आगे
आरंभ के बीच के पात्रों की श्रृंखला के लिए इतिहास में आगे खोजें
वर्तमान रेखा और बिंदु का. यह एक गैर-वृद्धिशील खोज है.
इतिहास-खोज-पिछड़ा
प्रारंभ के बीच वर्णों की श्रृंखला के लिए इतिहास में पीछे की ओर खोजें
वर्तमान रेखा और बिंदु का. यह एक गैर-वृद्धिशील खोज है.
यैंक-एनथ-आर्ग (एमसीवाई)
पिछले कमांड में पहला तर्क डालें (आमतौर पर दूसरा शब्द)।
पिछली पंक्ति) बिंदु पर। एक तर्क के साथ n, प्रवेश कराएं nपिछले से वां शब्द
कमांड (पिछले कमांड के शब्द शब्द 0 से शुरू होते हैं)। एक नकारात्मक तर्क
सम्मिलित करता है nपिछले आदेश के अंत से वां शब्द। एक बार बहस n is
गणना करने पर, तर्क इस प्रकार निकाला जाता है मानो "!n"इतिहास का विस्तार हुआ था
निर्दिष्ट।
यैंक-लास्ट-आर्ग (एम-।, एम-_)
पिछले कमांड में अंतिम तर्क डालें (पिछले का अंतिम शब्द)।
इतिहास प्रविष्टि). एक संख्यात्मक तर्क के साथ बिल्कुल वैसा ही व्यवहार करें यैंक-एनथ-आर्ग.
को लगातार कॉल यैंक-लास्ट-आर्ग सम्मिलित करते हुए, इतिहास सूची में पीछे जाएँ
प्रत्येक पंक्ति का अंतिम शब्द (या पहली कॉल के तर्क द्वारा निर्दिष्ट शब्द)।
मोड़। इन क्रमिक कॉलों को दिया गया कोई भी संख्यात्मक तर्क निर्धारित करता है
इतिहास के माध्यम से आगे बढ़ने की दिशा। एक नकारात्मक तर्क दिशा बदल देता है
इतिहास के माध्यम से (पीछे या आगे)। इतिहास विस्तार सुविधाओं का उपयोग किया जाता है
अंतिम शब्द निकालने के लिए, जैसे कि "!$" इतिहास विस्तार निर्दिष्ट किया गया हो।
शेल-विस्तार-रेखा (एमसीई)
शेल की तरह लाइन का विस्तार करें। यह उपनाम और इतिहास का विस्तार इस प्रकार करता है
साथ ही सभी शैल शब्द विस्तार। देखना इतिहास विस्तार एक के लिए नीचे
इतिहास विस्तार का वर्णन |
इतिहास-विस्तार-रेखा (एम-^)
वर्तमान लाइन पर इतिहास विस्तार करें। देखना इतिहास विस्तार एक के लिए नीचे
इतिहास विस्तार का वर्णन |
जादू-अंतरिक्ष
वर्तमान लाइन पर इतिहास विस्तार करें और एक स्थान डालें। देखना इतिहास
विस्तार इतिहास विस्तार के विवरण के लिए नीचे।
उपनाम-विस्तार-रेखा
वर्तमान लाइन पर उपनाम विस्तार करें। देखना उपनाम विवरण के लिए ऊपर
उपनाम विस्तार का.
इतिहास-और-उपनाम-विस्तार-रेखा
वर्तमान लाइन पर इतिहास और उपनाम विस्तार करें।
सम्मिलित-अंतिम-तर्क (एम-।, एम-_)
के लिए एक समानार्थी यैंक-लास्ट-आर्ग.
संचालित करें और अगला प्राप्त करें (सह)
निष्पादन के लिए वर्तमान पंक्ति को स्वीकार करें और उसके सापेक्ष अगली पंक्ति लाएँ
संपादन के लिए इतिहास से वर्तमान पंक्ति। किसी भी तर्क को नजरअंदाज कर दिया जाता है.
संपादित करें-और-निष्पादित-कमांड (सी-एक्ससी-ई)
वर्तमान कमांड लाइन पर एक संपादक को आमंत्रित करें, और परिणाम को शेल के रूप में निष्पादित करें
आदेश देता है। खूब जोर से पीटना आह्वान करने का प्रयास करता है $दृश्य, $ EDITOR, तथा Emacs संपादक के रूप में, में
वह आदेश.

कमानों एसटी बदलना टेक्स्ट
फाइल समाप्त (आमतौर पर सीडी)
सेट के रूप में फ़ाइल के अंत को दर्शाने वाला वर्ण, उदाहरण के लिए, ``stty'' द्वारा। यदि यह हो तो
कैरेक्टर तब पढ़ा जाता है जब लाइन पर कोई कैरेक्टर न हो और बिंदु बिंदु पर हो
लाइन की शुरुआत, रीडलाइन इसे इनपुट और रिटर्न के अंत के रूप में व्याख्या करती है EOF.
डिलीट-चार (सीडी)
बिंदु पर वर्ण हटाएँ. यदि यह फ़ंक्शन उसी वर्ण से बंधा है
ट्टी EOF चरित्र, जैसे सीडी आमतौर पर, प्रभावों के लिए ऊपर देखें।
बैकवर्ड-डिलीट-चार (झाड़ना)
कर्सर के पीछे का वर्ण हटाएँ. जब कोई संख्यात्मक तर्क दिया जाए, तो उसे सहेजें
किल रिंग पर डिलीट किया गया टेक्स्ट।
फॉरवर्ड-बैकवर्ड-डिलीट-चार
कर्सर के नीचे का वर्ण हटाएँ, जब तक कि कर्सर पंक्ति के अंत में न हो,
ऐसी स्थिति में कर्सर के पीछे का वर्ण हटा दिया जाता है।
उद्धृत-सम्मिलित करें (सीक्यू, सीवी)
पंक्ति में टाइप किया गया अगला अक्षर शब्दशः जोड़ें। ऐसे डालें डालने का तरीका
जैसे पात्र सीक्यू, उदाहरण के लिए।
टैब-सम्मिलित करें (सीवी टैब)
एक टैब वर्ण सम्मिलित करें.
स्व-सम्मिलित करें (ए, b, A, 1, !, ...)
टाइप किया गया अक्षर डालें.
ट्रांसपोज़-वर्ण (सीटी)
चरित्र को बिंदु से पहले आगे की ओर खींचें, बिंदु पर वर्ण के ऊपर, गतिमान बिंदु पर
आगे भी. यदि बिंदु रेखा के अंत में है, तो यह दोनों को स्थानांतरित कर देता है
बिंदु से पहले अक्षर. नकारात्मक तर्कों का कोई प्रभाव नहीं पड़ता.
स्थानांतरण-शब्द (माउंट)
शब्द को पहले बिंदु के बाद शब्द के बाद बिंदु तक खींचें, बिंदु को उस शब्द के ऊपर ले जाएं
भी। यदि बिंदु पंक्ति के अंत में है, तो यह अंतिम दो शब्दों को आगे स्थानांतरित कर देता है
रेखा।
upcase-शब्द (मु.)
वर्तमान (या निम्नलिखित) शब्द को बड़ा करें। एक नकारात्मक तर्क के साथ, अपरकेस
पिछला शब्द, लेकिन बिंदु को स्थानांतरित न करें।
डाउनकेस-शब्द (एमएल)
वर्तमान (या निम्नलिखित) शब्द को छोटा करें। नकारात्मक तर्क के साथ, लोअरकेस करें
पिछला शब्द, लेकिन बिंदु को स्थानांतरित न करें।
बड़े अक्षरों में शब्द लिखें (मैक)
वर्तमान (या निम्नलिखित) शब्द को बड़े अक्षरों में लिखें। एक नकारात्मक तर्क के साथ, पूंजीकरण करें
पिछला शब्द, लेकिन बिंदु को स्थानांतरित न करें।
अधिलेखित-मोड
ओवरराइट मोड टॉगल करें. एक स्पष्ट सकारात्मक संख्यात्मक तर्क के साथ, पर स्विच करता है
अधिलेखित मोड. एक स्पष्ट गैर-सकारात्मक संख्यात्मक तर्क के साथ, सम्मिलित करने के लिए स्विच करता है
तरीका। यह आदेश केवल प्रभावित करता है Emacs मोड; vi मोड अलग तरीके से अधिलेखित करता है।
प्रत्येक कॉल के लिए पढ़ने के लिए लाइन() इन्सर्ट मोड में प्रारंभ होता है. ओवरराइट मोड में, अक्षर बाउंड होते हैं
सेवा मेरे स्व-सम्मिलित करें टेक्स्ट को दाईं ओर धकेलने के बजाय उसे बिंदु पर बदलें।
अक्षर बंधे हुए हैं बैकवर्ड-डिलीट-चार बिंदु से पहले वर्ण को a से बदलें
अंतरिक्ष। डिफ़ॉल्ट रूप से, यह कमांड अनबाउंड है।

हत्या और यांकिंग
मार-रेखा (सीके)
पंक्ति के बिंदु से अंत तक पाठ को समाप्त करें।
बैकवर्ड-किल-लाइन (सीएक्स झाड़ना)
पंक्ति की शुरुआत तक पीछे की ओर मारें।
यूनिक्स-लाइन-त्यागें (घन)
बिंदु से पंक्ति की शुरुआत तक पीछे की ओर मारें। मारा गया पाठ सहेजा गया है
हत्या की अंगूठी.
किल-होल-लाइन
वर्तमान पंक्ति के सभी पात्रों को मारें, चाहे बिंदु कहीं भी हो।
हत्या शब्द (एमडी)
वर्तमान शब्द के बिंदु से अंत तक, या यदि शब्दों के बीच हो, तो अंत तक मारें
अगला शब्द. शब्द सीमाएँ वही हैं जो उपयोग की गई हैं अग्रेषित शब्द.
पिछड़ा-मार-शब्द (एम-रूबाउट)
बिंदु के पीछे शब्द को मार डालो. शब्द सीमाएँ वही हैं जो उपयोग की गई हैं
पिछड़ा-शब्द.
शैल-मार-शब्द (एमडी)
वर्तमान शब्द के बिंदु से अंत तक, या यदि शब्दों के बीच हो, तो अंत तक मारें
अगला शब्द. शब्द सीमाएँ वही हैं जो उपयोग की गई हैं शेल-फ़ॉरवर्ड-शब्द.
शैल-पिछड़ा-मार-शब्द (एम-रूबाउट)
बिंदु के पीछे शब्द को मार डालो. शब्द सीमाएँ वही हैं जो उपयोग की गई हैं
शैल-पिछला-शब्द.
यूनिक्स-शब्द-रूबाउट (सीडब्ल्यू)
शब्द सीमा के रूप में सफेद स्थान का उपयोग करके, बिंदु के पीछे शब्द को मारें। मारा गया पाठ
किल-रिंग पर सहेजा गया है।
यूनिक्स-फ़ाइलनाम-रूबाउट
शब्द के रूप में सफेद स्थान और स्लैश वर्ण का उपयोग करके, बिंदु के पीछे शब्द को हटा दें
सीमाएँ। मारा गया टेक्स्ट किल-रिंग पर सहेजा जाता है।
हटाएं-क्षैतिज-स्थान (एम-\)
बिंदु के आस-पास के सभी स्थान और टैब हटाएँ।
मार-क्षेत्र
वर्तमान क्षेत्र में पाठ को समाप्त करें.
प्रतिलिपि-क्षेत्र-जैसा-हत्या
क्षेत्र में पाठ को किल बफ़र में कॉपी करें।
प्रतिलिपि-पिछला-शब्द
किल बफ़र पर इंगित करने से पहले शब्द को कॉपी करें। शब्द सीमाएँ वैसी ही हैं
पिछड़ा-शब्द.
कॉपी-फ़ॉरवर्ड-शब्द
निम्नलिखित बिंदु वाले शब्द को किल बफ़र पर कॉपी करें। शब्द सीमाएँ समान हैं
as अग्रेषित शब्द.
झटका (साइ)
किल रिंग के शीर्ष को बिंदु पर बफ़र में घुमाएँ।
यंक-पॉप (मेरा)
किल रिंग को घुमाएँ, और नए शीर्ष को झटका दें। केवल अनुसरण करके कार्य करता है झटका or यंक-पॉप.

सांख्यिक तर्क
अंक-तर्क (एम-0, एम -1, ... एम--)
इस अंक को पहले से जमा हो रहे तर्क में जोड़ें, या एक नया तर्क शुरू करें। एम--
एक नकारात्मक तर्क शुरू करता है.
सार्वभौमिक-तर्क
यह तर्क निर्दिष्ट करने का एक और तरीका है। यदि इस आदेश का पालन एक या द्वारा किया जाता है
अधिक अंक, वैकल्पिक रूप से अग्रणी ऋण चिह्न के साथ, वे अंक परिभाषित करते हैं
तर्क। यदि आदेश का पालन अंकों द्वारा किया जाता है, तो निष्पादन सार्वभौमिक-तर्क फिर
संख्यात्मक तर्क को समाप्त करता है, लेकिन अन्यथा इसे अनदेखा कर दिया जाता है। एक विशेष मामले के रूप में, यदि यह
कमांड के तुरंत बाद एक ऐसा अक्षर आता है जो न तो अंक है और न ही ऋण
चिह्न, अगले आदेश के लिए तर्क संख्या चार से गुणा की जाती है। तर्क
गिनती प्रारंभ में एक है, इसलिए इस फ़ंक्शन को पहली बार निष्पादित करने से यह बनता है
तर्क की गिनती चार होती है, दूसरी बार तर्क की गिनती सोलह होती है, इत्यादि।

पूर्ण कर रहा है
पूरा (टैब)
बिंदु से पहले पाठ को पूरा करने का प्रयास करें। खूब जोर से पीटना प्रयास पूरा करना
पाठ को एक चर के रूप में मानना ​​(यदि पाठ शुरू होता है $), उपयोगकर्ता नाम (यदि text
साथ शुरू होता है ~), होस्टनाम (यदि पाठ शुरू होता है @), या कमांड (उपनाम सहित)।
और कार्य) बदले में। यदि इनमें से कोई भी मेल नहीं खाता है, तो फ़ाइल नाम पूर्णता है
प्रयास किया।
संभव-पूर्णताएँ (एम-?)
बिंदु से पहले पाठ की संभावित पूर्णताओं की सूची बनाएं।
सम्मिलित-पूर्णताएँ (एम-*)
पाठ की सभी पूर्णताओं को उस बिंदु से पहले डालें जो इसके द्वारा उत्पन्न किया गया होगा
संभव-पूर्णताएँ.
मेनू-पूर्ण
के समान पूरा, लेकिन पूर्ण होने वाले शब्द को एक मिलान से बदल देता है
संभावित पूर्णताओं की सूची. का बार-बार निष्पादन मेनू-पूर्ण कदम
संभावित पूर्णताओं की सूची के माध्यम से, प्रत्येक मैच को बारी-बारी से सम्मिलित करना। अंत में
पूर्णताओं की सूची में, घंटी बजाई जाती है (सेटिंग के अधीन)। घंटी शैली)
और मूल पाठ पुनर्स्थापित हो गया है. का एक तर्क n चाल n में आगे की स्थिति
मैचों की सूची; एक नकारात्मक तर्क का उपयोग पीछे की ओर जाने के लिए किया जा सकता है
सूची। इस आदेश का उद्देश्य बाध्य होना है टैब, लेकिन डिफ़ॉल्ट रूप से अनबाउंड है।
मेनू-पूर्ण-पिछड़ा
के समान मेनू-पूर्ण, लेकिन संभावित की सूची में पीछे चला जाता है
पूर्णता, मानो मेनू-पूर्ण एक नकारात्मक तर्क दिया गया था. यह आदेश
डिफ़ॉल्ट रूप से अनबाउंड है.
हटाएँ-चार-या-सूची
यदि पंक्ति के आरंभ या अंत में नहीं है तो कर्सर के नीचे का वर्ण हटा देता है
(पसंद डिलीट-चार). यदि पंक्ति के अंत में, के समान व्यवहार करता है
संभव-पूर्णताएँ. यह आदेश डिफ़ॉल्ट रूप से अनबाउंड है.
पूर्ण-फ़ाइलनाम (एम-/)
बिंदु से पहले पाठ पर फ़ाइल नाम पूरा करने का प्रयास करें।
संभव-फ़ाइल नाम-पूर्णताएँ (सीएक्स /)
बिंदु से पहले पाठ की संभावित पूर्णताओं को सूचीबद्ध करें, इसे फ़ाइल नाम के रूप में मानें।
पूर्ण-उपयोगकर्ता नाम (एम-~)
पाठ को उपयोगकर्ता नाम मानकर बिंदु से पहले पूरा करने का प्रयास करें।
संभावित-उपयोगकर्ता नाम-पूर्णताएँ (सीएक्स ~)
बिंदु से पहले पाठ की संभावित पूर्णताओं को सूचीबद्ध करें, इसे उपयोगकर्ता नाम के रूप में मानें।
पूर्ण-चर (एम-$)
पाठ को शेल वैरिएबल के रूप में मानते हुए, बिंदु से पहले पूरा करने का प्रयास करें।
संभव-परिवर्तनीय-पूर्णताएँ (सीएक्स $)
बिंदु से पहले पाठ की संभावित पूर्णताओं को सूचीबद्ध करें, इसे एक शेल के रूप में मानें
चर।
पूर्ण-होस्टनाम (एम-@)
टेक्स्ट को होस्टनाम मानकर बिंदु से पहले पूरा करने का प्रयास करें।
संभव-होस्टनाम-पूर्णताएँ (सीएक्स @)
बिंदु से पहले पाठ की संभावित पूर्णताओं को सूचीबद्ध करें, इसे होस्टनाम के रूप में मानें।
पूर्ण आदेश (एम-!)
टेक्स्ट को कमांड नाम के रूप में मानते हुए बिंदु से पहले पूरा करने का प्रयास करें।
कमांड पूर्णता पाठ को उपनामों, आरक्षित शब्दों के विरुद्ध मिलान करने का प्रयास करती है,
शेल फ़ंक्शंस, शेल बिल्टिन और अंततः निष्पादन योग्य फ़ाइल नाम, उसी क्रम में।
संभव-कमांड-पूर्णताएँ (सीएक्स !)
बिंदु से पहले पाठ की संभावित पूर्णताओं को एक आदेश के रूप में मानते हुए सूचीबद्ध करें
नाम.
गतिशील-संपूर्ण-इतिहास (एम-टैब)
बिंदु से पहले पाठ को पूरा करने का प्रयास करें, पाठ की तुलना पंक्तियों से करें
संभावित समापन मैचों के लिए इतिहास सूची।
dabbrev-विस्तार
बिंदु से पहले पाठ पर मेनू पूरा करने का प्रयास करें, पाठ की पंक्तियों से तुलना करें
संभावित समापन मैचों के लिए इतिहास सूची से।
पूर्ण-में-ब्रेसिज़ (एम-{)
फ़ाइल नाम पूर्ण करें और संलग्न संभावित पूर्णताओं की सूची डालें
ब्रेसिज़ के भीतर ताकि सूची शेल के लिए उपलब्ध हो (देखें)। ब्रेस विस्तार ऊपर)।

कुंजीपटल मैक्रोज़
प्रारंभ-केबीडी-मैक्रो (सीएक्स ()
वर्तमान कीबोर्ड मैक्रो में टाइप किए गए वर्णों को सहेजना प्रारंभ करें।
अंत-केबीडी-मैक्रो (सीएक्स ))
वर्तमान कीबोर्ड मैक्रो में टाइप किए गए वर्णों को सहेजना बंद करें और संग्रहीत करें
परिभाषा।
कॉल-अंतिम-केबीडी-मैक्रो (सीएक्स e)
मैक्रो में वर्ण बनाकर, परिभाषित अंतिम कीबोर्ड मैक्रो को पुनः निष्पादित करें
ऐसा प्रतीत होता है जैसे कि कीबोर्ड पर टाइप किया गया हो।
प्रिंट-अंतिम-केबीडी-मैक्रो ()
के लिए उपयुक्त प्रारूप में परिभाषित अंतिम कीबोर्ड मैक्रो को प्रिंट करें इनपुटआरसी फ़ाइल.

कई तरह का
पुनः पढ़ें-init-फ़ाइल (सीएक्स करोड़)
की सामग्री में पढ़ें इनपुटआरसी फ़ाइल, और किसी भी बाइंडिंग या वेरिएबल को शामिल करें
वहां असाइनमेंट मिले.
गर्भपात (सीजी)
वर्तमान संपादन आदेश को निरस्त करें और टर्मिनल की घंटी बजाएं (बशर्ते
का समायोजन घंटी शैली).
do-अपरकेस-संस्करण (माँ, एमबी, M-x, ...)
यदि रूपक वर्ण x लोअरकेस है, उस कमांड को चलाएँ जो इससे जुड़ा है
संगत अपरकेस वर्ण.
उपसर्ग-मेटा (ईएससी)
अगला अक्षर टाइप किया गया मेटाफाई। ESC f के बराबर है मेटा-एफ.
पूर्ववत (सी-_, Cx Cu)
वृद्धिशील पूर्ववत, प्रत्येक पंक्ति के लिए अलग से याद किया गया।
रिवर्ट-लाइन (श्री)
इस पंक्ति में किए गए सभी परिवर्तन पूर्ववत करें. यह क्रियान्वित करने जैसा है पूर्ववत पर्याप्त आदेश
लाइन को उसकी प्रारंभिक स्थिति में वापस लाने के लिए कई बार।
टिल्ड-विस्तार (एम-&)
वर्तमान शब्द पर टिल्ड विस्तार करें.
सेट-मार्क (सी-@, एम- )
चिह्न को बिंदु पर सेट करें. यदि कोई संख्यात्मक तर्क दिया जाता है, तो चिह्न सेट कर दिया जाता है
वह स्थिति.
विनिमय-बिंदु-और-चिह्न (सीएक्स सीएक्स)
बिंदु को चिह्न से बदलें. वर्तमान कर्सर स्थिति सहेजे पर सेट है
स्थिति, और पुरानी कर्सर स्थिति चिह्न के रूप में सहेजी जाती है।
चरित्र-खोज (सी-])
एक चरित्र पढ़ा जाता है और बिंदु को उस चरित्र की अगली घटना पर ले जाया जाता है। ए
नकारात्मक गणना पिछली घटनाओं की खोज करती है।
चरित्र-खोज-पिछड़ा (एमसी-])
एक चरित्र पढ़ा जाता है और बिंदु को उसकी पिछली घटना पर ले जाया जाता है
चरित्र। एक नकारात्मक गणना बाद की घटनाओं की खोज करती है।
स्किप-सीएसआई-अनुक्रम
बहु-कुंजी अनुक्रम जैसे कि परिभाषित वर्णों का उपभोग करने के लिए पर्याप्त वर्ण पढ़ें
होम और एंड जैसी कुंजियाँ। ऐसे अनुक्रम नियंत्रण अनुक्रम संकेतक से शुरू होते हैं
(सीएसआई), आमतौर पर ईएससी-[। यदि यह अनुक्रम "\[" से बंधा है, तो ऐसी कुंजियाँ उत्पन्न होती हैं
जब तक स्पष्ट रूप से रीडलाइन कमांड से बंधे न हों, अनुक्रमों का कोई प्रभाव नहीं पड़ेगा,
संपादन बफ़र में भटके हुए वर्ण डालने के बजाय। यह इससे अनबाउंड है
डिफ़ॉल्ट, लेकिन आमतौर पर ESC-[ से बंधा होता है।
सम्मिलित-टिप्पणी (एम-#)
संख्यात्मक तर्क के बिना, रीडलाइन का मान टिप्पणी-शुरू परिवर्तनशील है
वर्तमान पंक्ति की शुरुआत में डाला गया। यदि एक संख्यात्मक तर्क प्रदान किया जाता है,
यह आदेश टॉगल के रूप में कार्य करता है: यदि पंक्ति की शुरुआत में वर्ण ऐसा करते हैं
के मान से मेल नहीं खाता टिप्पणी-शुरू, मान डाला गया है, अन्यथा
में पात्र टिप्पणी-शुरू पंक्ति के आरंभ से हटा दिए जाते हैं. में या तो
मामले में, पंक्ति को ऐसे स्वीकार किया जाता है मानो कोई नई पंक्ति टाइप की गई हो। का डिफ़ॉल्ट मान
टिप्पणी-शुरू इस आदेश के कारण वर्तमान पंक्ति एक शेल टिप्पणी बन जाती है। यदि एक
संख्यात्मक तर्क के कारण टिप्पणी चरित्र हटा दिया जाएगा, पंक्ति होगी
शेल द्वारा निष्पादित।
ग्लोब-पूर्ण-शब्द (एमजी)
बिंदु से पहले शब्द को पथनाम विस्तार के लिए एक पैटर्न के रूप में माना जाता है
तारांकन स्पष्ट रूप से जोड़ा गया। इस पैटर्न का उपयोग मिलान की सूची तैयार करने के लिए किया जाता है
संभावित पूर्णताओं के लिए फ़ाइल नाम.
ग्लोब-विस्तार-शब्द (सीएक्स *)
बिंदु से पहले शब्द को पथनाम विस्तार और सूची के लिए एक पैटर्न के रूप में माना जाता है
शब्द के स्थान पर मिलते-जुलते फ़ाइल नाम डाले गए हैं। यदि कोई संख्यात्मक तर्क है
आपूर्ति की गई, पथनाम विस्तार से पहले एक तारांकन जोड़ा गया है।
ग्लोब-सूची-विस्तार (सीएक्स g)
विस्तारों की सूची जो इसके द्वारा उत्पन्न की गई होगी ग्लोब-विस्तार-शब्द is
प्रदर्शित होता है, और रेखा पुनः खींची जाती है। यदि कोई संख्यात्मक तर्क प्रदान किया जाता है, तो एक तारांकन चिह्न
पथनाम विस्तार से पहले जोड़ा जाता है।
डंप-कार्य
सभी फ़ंक्शन और उनकी कुंजी बाइंडिंग को रीडलाइन आउटपुट स्ट्रीम पर प्रिंट करें।
यदि एक संख्यात्मक तर्क प्रदान किया जाता है, तो आउटपुट को इस तरह से स्वरूपित किया जाता है
का हिस्सा बनाया जा सकता है इनपुटआरसी फ़ाइल.
डंप-चर
सभी सेट करने योग्य रीडलाइन वेरिएबल्स और उनके मानों को रीडलाइन पर प्रिंट करें
आउटपुट स्ट्रीम. यदि कोई संख्यात्मक तर्क प्रदान किया जाता है, तो आउटपुट को इस प्रकार स्वरूपित किया जाता है
एक ऐसा तरीका जिससे इसे एक का हिस्सा बनाया जा सके इनपुटआरसी फ़ाइल.
डंप-मैक्रोज़
मैक्रोज़ और स्ट्रिंग्स से जुड़े सभी रीडलाइन कुंजी अनुक्रमों को प्रिंट करें
आउटपुट. यदि कोई संख्यात्मक तर्क दिया जाता है, तो आउटपुट को इस प्रकार स्वरूपित किया जाता है
कि इसे एक का हिस्सा बनाया जा सकता है इनपुटआरसी फ़ाइल.
डिस्प्ले-शेल-संस्करण (सीएक्स सीवी)
के वर्तमान उदाहरण के बारे में संस्करण जानकारी प्रदर्शित करें खूब जोर से पीटना.

निर्देशयोग्य समापन
जब किसी कमांड के तर्क के लिए शब्द पूर्णता का प्रयास किया जाता है जिसके लिए पूर्णता होती है
विशिष्टता (ए कॉम्पस्पेक) का उपयोग करके परिभाषित किया गया है पूरा बिल्टिन (देखें शेल अंतर्निहित
कमानों नीचे), प्रोग्रामयोग्य पूर्णता सुविधाएं लागू की गई हैं।

सबसे पहले, कमांड नाम की पहचान की जाती है। यदि कमांड शब्द खाली स्ट्रिंग है
(खाली लाइन की शुरुआत में पूरा करने का प्रयास), के साथ परिभाषित कोई भी कॉम्पस्पेक -E
विकल्प पूरा प्रयोग किया जाता है। यदि उस कमांड के लिए एक कॉम्पस्पेक परिभाषित किया गया है, तो कॉम्पस्पेक
शब्द के लिए संभावित पूर्णताओं की सूची तैयार करने के लिए उपयोग किया जाता है। यदि आदेश शब्द है
एक पूर्ण पथनाम, पूर्ण पथनाम के लिए एक कॉम्पस्पेक पहले खोजा जाता है। यदि कोई कॉम्पस्पेक नहीं है
पूर्ण पथनाम के लिए पाया जाता है, भाग के लिए एक कॉम्पस्पेक खोजने का प्रयास किया जाता है
अंतिम स्लैश के बाद। यदि उन खोजों के परिणामस्वरूप कोई कॉम्पस्पेक नहीं मिलता है, तो कोई कॉम्पस्पेक
के साथ परिभाषित -D विकल्प पूरा डिफ़ॉल्ट के रूप में उपयोग किया जाता है।

एक बार कॉम्पस्पेक मिल जाने के बाद, इसका उपयोग मेल खाने वाले शब्दों की सूची तैयार करने के लिए किया जाता है। यदि एक
कॉम्पस्पेक नहीं मिला, डिफ़ॉल्ट खूब जोर से पीटना जैसा कि ऊपर वर्णित है, पूरा करना पूर्ण कर रहा है is
प्रदर्शन किया।

सबसे पहले, कॉम्पस्पेक द्वारा निर्दिष्ट क्रियाओं का उपयोग किया जाता है। केवल वे मिलान जो उपसर्ग से जुड़े हैं
पूरा किया जा रहा शब्द वापस कर दिया जाता है। जब -f or -d विकल्प का उपयोग फ़ाइल नाम या के लिए किया जाता है
निर्देशिका नाम पूर्णता, शेल चर फ़िग्नोर मैचों को फ़िल्टर करने के लिए उपयोग किया जाता है।

पथनाम विस्तार पैटर्न द्वारा निर्दिष्ट कोई भी पूर्णता -G विकल्प उत्पन्न होता है
अगला। पैटर्न द्वारा उत्पन्न शब्दों का पूरा होने वाले शब्द से मेल खाना आवश्यक नहीं है।
ग्लोबिग्नोर शेल वैरिएबल का उपयोग मैचों को फ़िल्टर करने के लिए नहीं किया जाता है, बल्कि फ़िग्नोर परिवर्तनशील है
उपयोग किया गया।

इसके बाद, स्ट्रिंग को तर्क के रूप में निर्दिष्ट किया गया -W विकल्प पर विचार किया जाता है. स्ट्रिंग है
पहले वर्णों का उपयोग करके विभाजित करें आईएफएस सीमांकक के रूप में विशेष चर। शैल उद्धरण
सम्मानित किया जाता है. फिर प्रत्येक शब्द को ब्रेस विस्तार, टिल्ड विस्तार, पैरामीटर का उपयोग करके विस्तारित किया जाता है
और परिवर्तनीय विस्तार, कमांड प्रतिस्थापन, और अंकगणितीय विस्तार, जैसा कि ऊपर वर्णित है
के अंतर्गत विस्तार. परिणाम ऊपर वर्णित नियमों का उपयोग करके विभाजित किए गए हैं शब्द
विभाजन. विस्तार के परिणाम शब्द के विरुद्ध उपसर्ग-मिलान हैं
पूर्ण हो जाता है, और मिलते-जुलते शब्द संभावित पूर्णता बन जाते हैं।

इन मिलानों के उत्पन्न होने के बाद, किसी भी शेल फ़ंक्शन या कमांड को निर्दिष्ट किया जाता है
-F और -C विकल्प लागू किया गया है। जब कमांड या फ़ंक्शन लागू किया जाता है, तो COMP_LINE,
COMP_POINT, COMP_KEY, तथा COMP_TYPE ऊपर वर्णित अनुसार वेरिएबल्स को मान निर्दिष्ट किए गए हैं
खोल चर. यदि कोई शेल फ़ंक्शन लागू किया जा रहा है, तो COMP_WORDS और COMP_CWORD
वेरिएबल भी सेट हैं. जब फ़ंक्शन या कमांड लागू किया जाता है, तो पहला तर्क ($1)
उस कमांड का नाम है जिसके तर्क पूरे हो रहे हैं, दूसरा तर्क ($2)
क्या शब्द पूरा हो रहा है, और तीसरा तर्क ($3) शब्द से पहले का शब्द है
वर्तमान कमांड लाइन पर पूरा किया जा रहा है। उत्पन्न पूर्णताओं का कोई फ़िल्टरिंग नहीं
शब्द पूरा होने के विरुद्ध प्रदर्शन किया जाता है; फ़ंक्शन या कमांड पूरा हो गया है
मैच उत्पन्न करने में स्वतंत्रता.

के साथ निर्दिष्ट कोई भी फ़ंक्शन -F सबसे पहले आह्वान किया जाता है. फ़ंक्शन किसी भी शेल का उपयोग कर सकता है
सुविधाएं, सहित compgen मिलान उत्पन्न करने के लिए नीचे वर्णित बिलिन। यह
संभावित पूर्णताएँ अवश्य डालनी चाहिए अनुपालन करें सरणी चर, प्रति सरणी तत्व एक।

इसके बाद, के साथ निर्दिष्ट कोई भी आदेश -C विकल्प को समतुल्य वातावरण में लागू किया जाता है
आदेश प्रतिस्थापन. इसे प्रति पंक्ति एक पूर्णता की सूची प्रिंट करनी चाहिए
मानक आउटपुट. यदि आवश्यक हो तो नई लाइन से बचने के लिए बैकस्लैश का उपयोग किया जा सकता है।

सभी संभावित पूर्णताएँ उत्पन्न होने के बाद, किसी भी फ़िल्टर को निर्दिष्ट किया जाता है -X
विकल्प सूची पर लागू होता है. फ़िल्टर एक पैटर्न है जिसका उपयोग पथनाम विस्तार के लिए किया जाता है; ए
& पैटर्न में शब्द के पूरा होने के पाठ के साथ प्रतिस्थापित किया जाता है। एक शाब्दिक & मई
बैकस्लैश से बच जाना; मैच का प्रयास करने से पहले बैकस्लैश हटा दिया जाता है। कोई
पैटर्न से मेल खाने वाली पूर्णता को सूची से हटा दिया जाएगा। एक अग्रणी ! नकारता
नमूना; इस स्थिति में पैटर्न से मेल न खाने वाली कोई भी पूर्णता हटा दी जाएगी।

अंत में, किसी भी उपसर्ग और प्रत्यय के साथ निर्दिष्ट -P और -S प्रत्येक में विकल्प जोड़े जाते हैं
पूर्णता सूची का सदस्य, और परिणाम रीडलाइन पूर्णता कोड पर लौटा दिया जाता है
संभावित पूर्णताओं की सूची के रूप में।

यदि पहले लागू की गई कार्रवाइयां कोई मिलान उत्पन्न नहीं करती हैं, और -o dirnames विकल्प
को आपूर्ति की गई थी पूरा जब कॉम्पस्पेक परिभाषित किया गया था, निर्देशिका नाम पूर्णता है
प्रयास किया।

अगर -o प्लसडिर्स विकल्प प्रदान किया गया था पूरा जब कॉम्पस्पेक परिभाषित किया गया था,
निर्देशिका नाम पूरा करने का प्रयास किया जाता है और किसी भी मिलान को परिणामों में जोड़ा जाता है
अन्य कार्रवाई।

डिफ़ॉल्ट रूप से, यदि कोई कॉम्पस्पेक पाया जाता है, तो वह जो कुछ भी उत्पन्न करता है उसे पूरा होने पर वापस कर दिया जाता है
संभावित पूर्णताओं के पूर्ण सेट के रूप में कोड। डिफ़ॉल्ट खूब जोर से पीटना पूर्णताएँ नहीं हैं
प्रयास किया गया है, और फ़ाइल नाम पूर्ण होने का रीडलाइन डिफ़ॉल्ट अक्षम है। यदि -o
bashdefault विकल्प प्रदान किया गया था पूरा जब कॉम्पस्पेक परिभाषित किया गया था, खूब जोर से पीटना
यदि कॉम्पस्पेक कोई मिलान उत्पन्न नहीं करता है तो डिफ़ॉल्ट पूर्णता का प्रयास किया जाता है। यदि -o चूक
विकल्प प्रदान किया गया था पूरा जब कॉम्पस्पेक परिभाषित किया गया था, रीडलाइन का डिफ़ॉल्ट
यदि कंपस्पेक (और, यदि प्रयास किया गया, तो डिफ़ॉल्ट) पूरा हो जाएगा खूब जोर से पीटना
पूर्णताएँ) कोई मिलान उत्पन्न नहीं करतीं।

जब एक कॉम्पस्पेक इंगित करता है कि निर्देशिका नाम पूरा करना वांछित है, तो प्रोग्रामयोग्य
पूर्णता फ़ंक्शन रीडलाइन को पूर्ण किए गए नामों में एक स्लैश जोड़ने के लिए बाध्य करते हैं
निर्देशिकाओं के प्रतीकात्मक लिंक, के मूल्य के अधीन चिह्न-निर्देशिकाएँ ReadLine
परिवर्तनशील, सेटिंग की परवाह किए बिना मार्क-सिम्लिंक्ड-निर्देशिकाएँ रीडलाइन वैरिएबल.

पूर्णताओं को गतिशील रूप से संशोधित करने के लिए कुछ समर्थन है। यह तब सर्वाधिक उपयोगी होता है जब
के साथ निर्दिष्ट डिफ़ॉल्ट पूर्णता के साथ संयोजन में उपयोग किया जाता है पूरा -D. यह संभव है
शेल फ़ंक्शंस के लिए पूर्णता हैंडलर के रूप में निष्पादित यह इंगित करने के लिए कि पूर्णता होनी चाहिए
124 की निकास स्थिति लौटाकर पुनः प्रयास किया गया। यदि कोई शेल फ़ंक्शन 124 लौटाता है, और बदलता है
उस कमांड से जुड़ा कॉम्पस्पेक जिस पर पूरा करने का प्रयास किया जा रहा है (आपूर्ति)।
फ़ंक्शन निष्पादित होने पर पहले तर्क के रूप में), प्रोग्रामयोग्य पूर्णता पुनरारंभ होती है
शुरुआत से ही, उस कमांड के लिए एक नया कॉम्पस्पेक खोजने के प्रयास के साथ। यह अनुमति देता है
पूर्णता का एक सेट गतिशील रूप से बनाया जाना चाहिए क्योंकि पूर्ण होने के बजाय प्रयास किया जाता है
सभी को एक साथ लोड किया गया।

उदाहरण के लिए, यह मानते हुए कि कॉम्पस्पेक्स की एक लाइब्रेरी है, प्रत्येक को एक फ़ाइल में रखा गया है
कमांड के नाम के अनुरूप, निम्न डिफ़ॉल्ट पूर्णता फ़ंक्शन होगा
पूर्णताओं को गतिशील रूप से लोड करें:

_पूर्ण_लोडर ()
{
. "/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && रिटर्न 124
}
पूर्ण -D -F _completion_loader -o bashdefault -o डिफ़ॉल्ट

इतिहास


जब -o इतिहास विकल्प सेट बिल्टिन सक्षम है, शेल तक पहुंच प्रदान करता है
आदेश इतिहास, पहले टाइप किए गए आदेशों की सूची। का मूल्य हिस्टसाइज़
वेरिएबल का उपयोग इतिहास सूची में सहेजने के लिए कमांड की संख्या के रूप में किया जाता है। का पाठ
पिछली बार हिस्टसाइज़ आदेश (डिफ़ॉल्ट 500) सहेजा गया है। शेल प्रत्येक कमांड को इसमें संग्रहीत करता है
पैरामीटर और चर विस्तार से पहले की इतिहास सूची (देखें विस्तार ऊपर) लेकिन बाद में
इतिहास का विस्तार शेल चर के मूल्यों के अधीन किया जाता है हिस्टिग्नोर
और इतिहास नियंत्रण.

स्टार्टअप पर, इतिहास को वेरिएबल द्वारा नामित फ़ाइल से प्रारंभ किया जाता है हिस्टफाइल
(चूक जाना ~ / .bash_history). के मान से नामित फ़ाइल हिस्टफाइल यदि, काट दिया गया है
के मान द्वारा निर्दिष्ट पंक्तियों की संख्या से अधिक नहीं होना आवश्यक है
हिस्टफ़ाइलआकार. अगर हिस्टफ़ाइलआकार अनसेट है, या शून्य पर सेट है, एक गैर-संख्यात्मक मान, या एक संख्यात्मक
मान शून्य से कम होने पर, इतिहास फ़ाइल को छोटा नहीं किया जाता है। जब इतिहास फ़ाइल पढ़ी जाती है,
इतिहास टिप्पणी चरित्र से शुरू होने वाली पंक्तियाँ और उसके तुरंत बाद एक अंक आता है
पूर्ववर्ती इतिहास पंक्ति के लिए टाइमस्टैम्प के रूप में व्याख्या की गई। ये टाइमस्टैम्प वैकल्पिक हैं
के मूल्य के आधार पर प्रदर्शित किया जाता है इतिहास समय प्रारूप चर। जब एक खोल के साथ
इतिहास सक्षम निकास, अंतिम $हिस्टआकार पंक्तियों को इतिहास सूची से कॉपी किया जाता है
$ इतिहास। अगर htappend शेल विकल्प सक्षम है (विवरण देखें)। दुकान के अंतर्गत
शेल अंतर्निहित कमानों नीचे), पंक्तियाँ इतिहास फ़ाइल में जोड़ दी गई हैं, अन्यथा
इतिहास फ़ाइल अधिलेखित है. अगर हिस्टफाइल सेट नहीं है, या यदि इतिहास फ़ाइल लिखने योग्य नहीं है,
इतिहास सहेजा नहीं गया है. यदि इतिहास समय प्रारूप वेरिएबल सेट किया गया है, टाइम स्टैम्प लिखे गए हैं
इतिहास फ़ाइल में, इतिहास टिप्पणी चरित्र के साथ चिह्नित किया गया है, ताकि उन्हें संरक्षित किया जा सके
शेल सत्रों में। यह टाइमस्टैम्प को अलग करने के लिए इतिहास टिप्पणी चरित्र का उपयोग करता है
अन्य इतिहास पंक्तियों से. इतिहास को सहेजने के बाद, इतिहास फ़ाइल को छोटा कर दिया जाता है
से अधिक शामिल नहीं है हिस्टफ़ाइलआकार लाइनें। अगर हिस्टफ़ाइलआकार अनसेट है, या शून्य पर सेट है, एक गैर-
संख्यात्मक मान, या शून्य से कम संख्यात्मक मान, इतिहास फ़ाइल को छोटा नहीं किया जाता है।

अंतर्निहित आदेश fc (देखें शेल अंतर्निहित कमानों नीचे) का उपयोग सूचीबद्ध करने या संपादित करने के लिए किया जा सकता है
इतिहास सूची के एक भाग को पुनः निष्पादित करें। इतिहास बिल्टिन का उपयोग प्रदर्शित करने के लिए किया जा सकता है या
इतिहास सूची को संशोधित करें और इतिहास फ़ाइल में हेरफेर करें। कमांड-लाइन संपादन का उपयोग करते समय,
खोज आदेश प्रत्येक संपादन मोड में उपलब्ध हैं जो इतिहास तक पहुंच प्रदान करते हैं
सूची।

शेल इस पर नियंत्रण की अनुमति देता है कि इतिहास सूची में कौन से कमांड सहेजे गए हैं।
इतिहास नियंत्रण और हिस्टिग्नोर वेरिएबल्स को सेट किया जा सकता है ताकि शेल केवल एक उपसमूह को बचा सके
दर्ज किए गए आदेशों में से. सी.एम.डी.एच.आई.एस.टी शेल विकल्प, यदि सक्षम है, तो शेल का कारण बनता है
जोड़कर, मल्टी-लाइन कमांड की प्रत्येक पंक्ति को समान इतिहास प्रविष्टि में सहेजने का प्रयास करें
वाक्यविन्यास की शुद्धता को बनाए रखने के लिए जहां आवश्यक हो वहां अर्धविराम लगाएं। लिथिस्ट शैल विकल्प
शेल को अर्धविराम के बजाय एम्बेडेड न्यूलाइन के साथ कमांड को सहेजने का कारण बनता है। देखना
का वर्णन दुकान नीचे नीचे बनाया गया है शेल अंतर्निहित कमानों जानकारी के लिए
शेल विकल्प को सेट करना और अनसेट करना।

इतिहास विस्तार


शेल एक इतिहास विस्तार सुविधा का समर्थन करता है जो इतिहास विस्तार के समान है
सीएसएच. यह अनुभाग बताता है कि कौन सी सिंटैक्स सुविधाएँ उपलब्ध हैं। यह सुविधा सक्षम है
इंटरैक्टिव शेल के लिए डिफ़ॉल्ट रूप से, और इसका उपयोग करके अक्षम किया जा सकता है +H विकल्प सेट
बिल्टिन कमांड (देखें) शेल अंतर्निहित कमानों नीचे)। गैर-संवादात्मक शेल कार्य नहीं करते
डिफ़ॉल्ट रूप से इतिहास का विस्तार.

इतिहास विस्तार इतिहास सूची से शब्दों को इनपुट स्ट्रीम में पेश करता है, जिससे यह बनता है
कमांड को दोहराना आसान है, पिछले कमांड के तर्कों को वर्तमान इनपुट में डालें
लाइन, या पिछले आदेशों में त्रुटियों को शीघ्रता से ठीक करें।

इतिहास का विस्तार पूरी पंक्ति पढ़ने के तुरंत बाद, शेल से पहले किया जाता है
उसे शब्दों में तोड़ता है. यह दो भागों में होता है. सबसे पहले यह निर्धारित करना है कि कौन सी रेखा है
प्रतिस्थापन के दौरान उपयोग करने के लिए इतिहास सूची से। दूसरा भाग का चयन करना है
वर्तमान पंक्ति में शामिल करने के लिए वह पंक्ति। इतिहास से चयनित पंक्ति है
घटना, और उस पंक्ति के वे भाग जिन पर कार्रवाई की जाती है शब्द। विभिन्न संशोधक रहे
चयनित शब्दों में हेरफेर करने के लिए उपलब्ध है। पंक्ति को उसी में शब्दों में तोड़ दिया गया है
इनपुट पढ़ते समय फ़ैशन, ताकि कई मेटाकैरेक्टर-अलग-अलग शब्दों से घिरा हुआ
उद्धरण को एक शब्द माना जाता है। के प्रकट होने से इतिहास विस्तार का परिचय मिलता है
इतिहास विस्तार चरित्र, जो है ! डिफ़ॉल्ट रूप से। केवल बैकस्लैश (\) और एकल
उद्धरण इतिहास विस्तार चरित्र को उद्धृत कर सकते हैं।

कई पात्र इतिहास के ठीक बाद पाए जाने पर इतिहास के विस्तार को रोकते हैं
विस्तार चरित्र, भले ही वह उद्धृत न किया गया हो: स्पेस, टैब, न्यूलाइन, कैरिज रिटर्न, और =.
अगर extglob शेल विकल्प सक्षम है, ( विस्तार को भी रोकेगा।

कई शेल विकल्प के साथ व्यवस्थित दुकान व्यवहार को अनुकूलित करने के लिए बिल्टिन का उपयोग किया जा सकता है
इतिहास के विस्तार का. यदि histverify शेल विकल्प सक्षम है (विवरण देखें)।
la दुकान नीचे निर्मित), और ReadLine प्रयोग किया जा रहा है, इतिहास प्रतिस्थापन नहीं
तुरंत शेल पार्सर को भेज दिया गया। इसके बजाय, विस्तारित लाइन को पुनः लोड किया जाता है
ReadLine आगे के संशोधन के लिए बफ़र का संपादन। अगर ReadLine का उपयोग किया जा रहा है, और
Histreedit शेल विकल्प सक्षम है, एक असफल इतिहास प्रतिस्थापन को पुनः लोड किया जाएगा
la ReadLine सुधार के लिए संपादन बफ़र. -p विकल्प इतिहास अंतर्निहित आदेश
इसका उपयोग यह देखने के लिए किया जा सकता है कि इतिहास विस्तार इसका उपयोग करने से पहले क्या करेगा। -s विकल्प
इतिहास बिल्टिन का उपयोग बिना इतिहास सूची के अंत में कमांड जोड़ने के लिए किया जा सकता है
वास्तव में उन्हें निष्पादित करना, ताकि वे बाद में वापस बुलाने के लिए उपलब्ध हों।

शेल इतिहास विस्तार तंत्र द्वारा उपयोग किए जाने वाले विभिन्न वर्णों को नियंत्रित करने की अनुमति देता है
(विवरण देखें हिस्टचार्स ऊपर नीचे खोल चर). शेल का उपयोग करता है
इतिहास फ़ाइल लिखते समय इतिहास टाइमस्टैम्प को चिह्नित करने के लिए इतिहास टिप्पणी चरित्र।

कार्यक्रम डिज़ाइनर
इवेंट डिज़ाइनर इतिहास सूची में कमांड लाइन प्रविष्टि का संदर्भ है। जब तक
संदर्भ निरपेक्ष है, घटनाएँ इतिहास में वर्तमान स्थिति के सापेक्ष हैं
सूची।

! इतिहास प्रतिस्थापन प्रारंभ करें, सिवाय इसके कि जब a का अनुसरण किया जाए रिक्त, न्यूलाइन, गाड़ी
वापसी, = या ((जब extglob शेल विकल्प का उपयोग करके सक्षम किया गया है दुकान निर्मित)।
!n कमांड लाइन का संदर्भ लें n.
!-n वर्तमान कमांड माइनस का संदर्भ लें n.
!! पिछले आदेश का संदर्भ लें. यह `!-1' का पर्यायवाची है।
!स्ट्रिंग
इतिहास सूची में वर्तमान स्थिति से पहले नवीनतम कमांड का संदर्भ लें
के साथ शुरू स्ट्रिंग.
!?स्ट्रिंग[?]
इतिहास सूची में वर्तमान स्थिति से पहले नवीनतम कमांड का संदर्भ लें
युक्त स्ट्रिंग. पीछे चल रहा है ? छोड़ा जा सकता है अगर स्ट्रिंग तुरंत पालन किया जाता है
एक नई पंक्ति द्वारा.
^string1^string2^
त्वरित प्रतिस्थापन. पिछले आदेश को प्रतिस्थापित करते हुए दोहराएँ string1 साथ में string2.
``!!:s/ के बराबरstring1/string2/'' (देखना संशोधक नीचे).
!# अब तक पूरी कमांड लाइन टाइप हो गई है।

शब्द डिज़ाइनर
इवेंट से वांछित शब्दों का चयन करने के लिए शब्द डिज़ाइनर्स का उपयोग किया जाता है। ए : घटना को अलग करता है
पदनामकर्ता शब्द से विशिष्टता। यदि पदनाम शब्द शुरू होता है तो इसे छोड़ा जा सकता है
पंजीकरण शुल्क ^, $, *, -या, %. शब्दों को पंक्ति की शुरुआत से क्रमांकित किया जाता है
पहला शब्द 0 (शून्य) से दर्शाया जा रहा है। शब्दों को अलग-अलग वर्तमान पंक्ति में डाला जाता है
एकल स्थानों द्वारा.

0 (शून्य)
शून्यवाँ शब्द. शेल के लिए, यह कमांड शब्द है.
n RSI nवां शब्द.
^ पहला तर्क. अर्थात शब्द 1.
$ आख़िरी शब्द। यह आमतौर पर अंतिम तर्क है, लेकिन इसका विस्तार शून्य तक हो जाएगा
शब्द यदि पंक्ति में केवल एक शब्द है।
% शब्द सबसे हाल के ` से मेल खाता है?स्ट्रिंग?' खोजना।
x-y शब्दों की एक श्रृंखला; `-y' संक्षिप्ताक्षर `0-y'.
* शून्य को छोड़कर सभी शब्द। यह ` का पर्यायवाची है1-$'. यह कोई त्रुटि नहीं है
उपयोग करने के लिए * यदि घटना में केवल एक शब्द है; खाली स्ट्रिंग वापस आ गई है
उस मामले में।
x* संक्षिप्तीकरण एक्स-$.
x- संक्षिप्तीकरण एक्स-$ पसंद x*, लेकिन अंतिम शब्द छोड़ देता है।

यदि कोई शब्द डिज़ाइनर किसी ईवेंट विनिर्देश के बिना प्रदान किया जाता है, तो पिछला आदेश है
घटना के रूप में उपयोग किया जाता है।

संशोधक
वैकल्पिक शब्द पदनाम के बाद, एक या अधिक का अनुक्रम दिखाई दे सकता है
निम्नलिखित संशोधक, प्रत्येक के पहले एक `:' है।

h केवल शीर्ष छोड़कर, पिछला फ़ाइल नाम घटक हटा दें।
t पूंछ को छोड़कर सभी प्रमुख फ़ाइल नाम घटकों को हटा दें।
r प्रपत्र का पिछला प्रत्यय हटाएँ .xxx, बेसनेम छोड़ रहा हूँ।
e अनुवर्ती प्रत्यय को छोड़कर सभी को हटा दें।
p नया कमांड प्रिंट करें लेकिन इसे निष्पादित न करें।
q आगे प्रतिस्थापन से बचते हुए, प्रतिस्थापित शब्दों को उद्धृत करें।
x प्रतिस्थापित शब्दों को साथ के रूप में उद्धृत करें q, लेकिन शब्दों में तोड़ो पर कारतूस और नई पंक्तियाँ।
s/पुराना/नई/
विकल्प नई की पहली घटना के लिए पुराना इवेंट लाइन में. कोई भी सीमांकक
के स्थान पर उपयोग किया जा सकता है /. यदि अंतिम सीमांकक अंतिम है तो यह वैकल्पिक है
इवेंट लाइन का चरित्र. सीमांकक को उद्धृत किया जा सकता है पुराना और नई पंजीकरण शुल्क
एकल बैकस्लैश. यदि & दिखाई देता है नई, द्वारा प्रतिस्थापित किया जाता है पुराना. एक एकल बैकस्लैश
& को उद्धृत करेंगे. अगर पुराना शून्य है, यह अंतिम पर सेट है पुराना प्रतिस्थापित, या, यदि नहीं
पिछला इतिहास प्रतिस्थापन हुआ, अंतिम स्ट्रिंग में !?स्ट्रिंग[?]
खोज।
& पिछला प्रतिस्थापन दोहराएँ.
g संपूर्ण ईवेंट लाइन पर परिवर्तन लागू करने का कारण बनें. इसका प्रयोग इसमें किया जाता है
` के साथ संयोजन:s' (जैसे, `:जीएस/पुराना/नई/') या `:&'. यदि ` के साथ प्रयोग किया जाता है:s', कोई
सीमांकक का उपयोग / के स्थान पर किया जा सकता है, और यदि यह है तो अंतिम सीमांकक वैकल्पिक है
इवेंट पंक्ति का अंतिम अक्षर. एक a के पर्यायवाची के रूप में इस्तेमाल किया जा सकता है g.
G निम्नलिखित लागू करें `s' इवेंट लाइन में प्रत्येक शब्द को एक बार संशोधक करें।

शेल अंतर्निहित कमानों


जब तक अन्यथा उल्लेख न किया गया हो, प्रत्येक अंतर्निहित कमांड को इस अनुभाग में स्वीकार्य के रूप में प्रलेखित किया गया है
विकल्पों से पहले - स्वीकार करता है -- विकल्पों के अंत को दर्शाने के लिए। :, <strong>उद्देश्य</strong>, असत्य,
और परीक्षण बिल्टिन विकल्प स्वीकार नहीं करते और इलाज नहीं करते -- विशेष रूप से। निकास, लॉगआउट,
तोड़ना, जारी रखने के, चलो, तथा पाली बिल्टिन प्रारंभ होने वाले तर्कों को स्वीकार करते हैं और संसाधित करते हैं -
बिना आवश्यकता के --. अन्य बिल्टिन जो तर्क स्वीकार करते हैं लेकिन निर्दिष्ट नहीं हैं
विकल्पों को स्वीकार करने से शुरू होने वाले तर्कों की व्याख्या करें - अमान्य विकल्प और आवश्यकता के रूप में --
इस व्याख्या को रोकने के लिए.
: [तर्क]
कोई प्रभाव नहीं; कमांड विस्तार के अलावा कुछ नहीं करता है तर्क और कोई भी प्रदर्शन करना
निर्दिष्ट पुनर्निर्देशन. एक शून्य निकास कोड लौटाया जाता है।

. फ़ाइल का नाम [तर्क]
स्रोत फ़ाइल का नाम [तर्क]
से कमांड पढ़ें और निष्पादित करें फ़ाइल का नाम वर्तमान शेल वातावरण में और वापसी
से निष्पादित अंतिम कमांड की निकास स्थिति फ़ाइल का नाम. अगर फ़ाइल का नाम नहीं होता है
इसमें एक स्लैश, फ़ाइल नाम शामिल हैं पथ युक्त निर्देशिका को खोजने के लिए उपयोग किया जाता है
फ़ाइल का नाम. फ़ाइल की खोज की गई पथ निष्पादन योग्य होने की आवश्यकता नहीं है. कब खूब जोर से पीटना नहीं है
in POSIX मोडयदि कोई फ़ाइल नहीं मिलती है तो वर्तमान निर्देशिका की खोज की जाती है पथ. अगर
la sourcepath विकल्प दुकान बिल्टइन कमांड बंद है पथ नहीं है
खोजा. यदि कोई तर्क आपूर्ति की जाती है, वे स्थितीय पैरामीटर बन जाते हैं
कब फ़ाइल का नाम निष्पादित किया जाता है। अन्यथा स्थितीय पैरामीटर अपरिवर्तित हैं।
रिटर्न स्टेटस स्क्रिप्ट के भीतर से निकले अंतिम कमांड की स्थिति है (यदि नहीं तो 0)।
आदेश निष्पादित किए जाते हैं), और गलत यदि फ़ाइल का नाम नहीं मिला या पढ़ा नहीं जा सका.

उर्फ [-p] [नाम[=मूल्य] ...]
उर्फ बिना किसी तर्क के या बिना किसी तर्क के -p विकल्प में उपनामों की सूची प्रिंट करता है
प्रपत्र उर्फ नाम=मूल्य मानक आउटपुट पर. जब तर्क प्रदान किए जाते हैं, तो उपनाम होता है
प्रत्येक के लिए परिभाषित नाम किसका मूल्य दिया हुआ है। एक अनुगामी स्थान मूल्य का कारण बनता है
जब उपनाम का विस्तार किया जाता है तो अगले शब्द को उपनाम प्रतिस्थापन के लिए जांचा जाना चाहिए। के लिए
से प्रत्येक नाम तर्क सूची में जिसके लिए नहीं मूल्य आपूर्ति की जाती है, नाम और मूल्य
उपनाम मुद्रित है. उर्फ जब तक कि a सत्य न हो जाए नाम जिसके लिए नं
उपनाम परिभाषित किया गया है.

bg [जॉबस्पेक ...]
प्रत्येक निलंबित कार्य को फिर से शुरू करें जॉबस्पेक पृष्ठभूमि में, मानो इसकी शुरुआत की गई हो
&. अगर जॉबस्पेक मौजूद नहीं है, शेल की धारणा वर्तमान काम प्रयोग किया जाता है। bg
जॉबस्पेक 0 लौटाता है जब तक कि कार्य नियंत्रण अक्षम होने पर या कार्य के साथ चलाने पर न चलाया जाए
नियंत्रण सक्षम, कोई भी निर्दिष्ट जॉबस्पेक नहीं मिला या बिना नौकरी के शुरू कर दिया गया
नियंत्रित करते हैं.

बाँध [-m कीमैप] [-एलपीएसवीपीएसवीएक्स]
बाँध [-m कीमैप] [-q समारोह] [-u समारोह] [-r keyseq]
बाँध [-m कीमैप] -f फ़ाइल का नाम
बाँध [-m कीमैप] -x keyseq:शेल-कमांड
बाँध [-m कीमैप] keyseq:समारोह-नाम
बाँध रीडलाइन-कमांड
वर्तमान प्रदर्शित करें ReadLine कुंजी और फ़ंक्शन बाइंडिंग, एक कुंजी अनुक्रम को a से बांधें
ReadLine फ़ंक्शन या मैक्रो, या सेट करें ReadLine चर। प्रत्येक गैर-विकल्प तर्क
यह एक आदेश है जैसा कि इसमें दिखाई देगा .inputrc, लेकिन प्रत्येक बाइंडिंग या कमांड होना चाहिए
एक अलग तर्क के रूप में पारित; उदाहरण के लिए, ''\Cx\Cr'': re-read-init-file'। विकल्प, यदि
आपूर्ति, निम्नलिखित अर्थ हैं:
-m कीमैप
उपयोग कीमैप बाद की बाइंडिंग से प्रभावित होने वाले कीमैप के रूप में।
स्वीकार्य कीमैप नाम है इमैक, Emacs-मानक, Emacs-मेटा, Emacs-CTLX,
vi, vi-चाल, vi-कमांड, तथा vi-डालें. vi के बराबर है vi-कमांड;
Emacs के बराबर है Emacs-मानक.
-l सभी के नाम सूचीबद्ध करें ReadLine कार्य करता है.
-p डिस्प्ले ReadLine फ़ंक्शन के नाम और बाइंडिंग इस प्रकार रखें कि वे हो सकें
पुनः पढ़ें.
-P वर्तमान सूची ReadLine फ़ंक्शन नाम और बाइंडिंग.
-s डिस्प्ले ReadLine मैक्रोज़ और उनके द्वारा आउटपुट की जाने वाली स्ट्रिंग्स से जुड़े प्रमुख अनुक्रम
इस प्रकार कि उन्हें पुनः पढ़ा जा सके।
-S डिस्प्ले ReadLine मैक्रोज़ और उनके द्वारा आउटपुट की जाने वाली स्ट्रिंग्स से जुड़े प्रमुख अनुक्रम।
-v डिस्प्ले ReadLine परिवर्तनीय नाम और मान इस प्रकार हैं कि वे हो सकते हैं
पुनः पढ़ें.
-V वर्तमान सूची ReadLine परिवर्तनीय नाम और मान.
-f फ़ाइल का नाम
से मुख्य बाइंडिंग पढ़ें फ़ाइल का नाम.
-q समारोह
इस बारे में प्रश्न करें कि कौन सी कुंजियाँ नामित को आमंत्रित करती हैं समारोह.
-u समारोह
नामित से जुड़ी सभी कुंजियाँ खोल दें समारोह.
-r keyseq
के लिए किसी भी मौजूदा बाइंडिंग को हटा दें keyseq.
-x keyseq:शेल-कमांड
कारण शेल-कमांड जब भी निष्पादित किया जाए keyseq दर्ज किया गया है। कब
शेल-कमांड निष्पादित किया जाता है, शेल सेट करता है READLINE_LINE के लिए परिवर्तनशील
की सामग्री ReadLine लाइन बफ़र और READLINE_POINT के लिए परिवर्तनशील
सम्मिलन बिंदु का वर्तमान स्थान. यदि निष्पादित आदेश बदल जाता है
के मूल्य READLINE_LINE or READLINE_POINT, वे नए मूल्य होंगे
संपादन स्थिति में परिलक्षित होता है.
-X शेल कमांड और संबंधित कमांड से जुड़े सभी प्रमुख अनुक्रमों को सूचीबद्ध करें
ऐसे प्रारूप में जिसे इनपुट के रूप में पुन: उपयोग किया जा सकता है।

रिटर्न मान 0 है जब तक कि कोई अपरिचित विकल्प नहीं दिया गया हो या कोई त्रुटि न हुई हो।

तोड़ना [n]
भीतर से बाहर निकलें ए एसटी , जब, जब तकया, चयन कुंडली। अगर n निर्दिष्ट है, तोड़ो n
पहचानने में सक्षम होना चाहिए। n होना चाहिए ≥ 1. यदि n सभी घेरने वाले लूपों की संख्या से अधिक है
घेरने वाले लूप बाहर निकल गए हैं। जब तक रिटर्न मान 0 न हो n या से बड़ा नहीं है
1 के बराबर.

builtin शेल-बिल्टिन [तर्क]
निर्दिष्ट शेल बिल्टिन को पास करते हुए निष्पादित करें तर्क, और इसका निकास लौटाएँ
स्थिति। यह किसी फ़ंक्शन को परिभाषित करते समय उपयोगी होता है जिसका नाम शेल के समान होता है
बिल्टिन, फ़ंक्शन के भीतर बिल्टिन की कार्यक्षमता को बनाए रखता है। cd
बिल्टिन को आमतौर पर इस तरह से पुनः परिभाषित किया जाता है। यदि वापसी की स्थिति गलत है
शेल-बिल्टिन शेल बिल्टइन कमांड नहीं है.

फोन करने वाले [expr]
किसी भी सक्रिय सबरूटीन कॉल (शेल फ़ंक्शन या स्क्रिप्ट) का संदर्भ लौटाता है
के साथ निष्पादित . or स्रोत बिल्टिंस)। बिना expr, फोन करने वाले लाइन प्रदर्शित करता है
वर्तमान सबरूटीन कॉल का नंबर और स्रोत फ़ाइल नाम। यदि कोई गैर-नकारात्मक
पूर्णांक के रूप में आपूर्ति की जाती है expr, फोन करने वाले लाइन नंबर, सबरूटीन नाम और प्रदर्शित करता है
वर्तमान निष्पादन कॉल स्टैक में उस स्थिति के अनुरूप स्रोत फ़ाइल।
इस अतिरिक्त जानकारी का उपयोग, उदाहरण के लिए, स्टैक ट्रेस मुद्रित करने के लिए किया जा सकता है।
वर्तमान फ़्रेम फ़्रेम 0 है। रिटर्न मान 0 है जब तक कि शेल निष्पादित नहीं हो रहा हो
एक सबरूटीन कॉल या expr कॉल में मान्य स्थिति के अनुरूप नहीं है
ढेर।

cd [-L|[-P [-e]] [-@]] [दीर]
वर्तमान निर्देशिका को इसमें बदलें दीर। अगर दीर आपूर्ति नहीं की जाती है, का मूल्य होम
शेल वेरिएबल डिफ़ॉल्ट है. निम्नलिखित कोई अतिरिक्त तर्क दीर नजरअंदाज कर दिया जाता है।
चर CDPATH युक्त निर्देशिका के लिए खोज पथ को परिभाषित करता है दीर: प्रत्येक
निर्देशिका नाम में CDPATH खोजा जाता है दीर. वैकल्पिक निर्देशिका नाम
CDPATH कोलन (:) द्वारा अलग किया जाता है। में एक शून्य निर्देशिका नाम CDPATH एक ही है
वर्तमान निर्देशिका के रूप में, यानी, ``.''. अगर दीर फिर स्लैश (/) से शुरू होता है CDPATH
उपयोग नहीं होता है। -P विकल्प कारण cd भौतिक निर्देशिका संरचना का उपयोग करने के लिए
ट्रैवर्स करते समय प्रतीकात्मक लिंक को हल करना दीर और के उदाहरणों को संसाधित करने से पहले ..
in दीर (यह भी देखें -P विकल्प सेट बिल्टिन कमांड); -L विकल्प बल
उदाहरणों को संसाधित करने के बाद लिंक को हल करके प्रतीकात्मक लिंक का पालन किया जाना चाहिए
.. in दीर. अगर .. प्रकट होता है दीर, इसे तुरंत हटाकर संसाधित किया जाता है
पिछला पथनाम घटक दीर, स्लैश या शुरुआत पर वापस जाएं दीर. अगर
la -e विकल्प दिया गया है -P, और वर्तमान कार्यशील निर्देशिका नहीं हो सकती
एक सफल निर्देशिका परिवर्तन के बाद सफलतापूर्वक निर्धारित किया गया, cd एक वापस कर देंगे
असफल स्थिति. उन प्रणालियों पर जो इसका समर्थन करते हैं, -@ विकल्प प्रस्तुत करता है
एक निर्देशिका के रूप में फ़ाइल से जुड़ी विस्तारित विशेषताएँ। का एक तर्क - is
इसमें बदला गया $OLDPWD निर्देशिका परिवर्तन का प्रयास करने से पहले। यदि कोई खाली नहीं है
निर्देशिका नाम से CDPATH उपयोग किया जाता है, या यदि - पहला तर्क है, और
निर्देशिका परिवर्तन सफल है, नई कार्यशील निर्देशिका का पूर्ण पथनाम
मानक आउटपुट पर लिखा जाता है। यदि निर्देशिका थी तो रिटर्न मान सत्य है
सफलतापूर्वक बदला गया; अन्यथा मिथ्या।

आदेश [-पीवीवी] आदेश [arg ...]
रन आदेश साथ में आर्ग सामान्य शेल फ़ंक्शन लुकअप को दबाना। केवल निर्मित
आदेश या आदेश में पाए गए पथ निष्पादित किये जाते हैं. यदि -p विकल्प दिया है,
के लिए खोज आदेश के लिए एक डिफ़ॉल्ट मान का उपयोग करके किया जाता है पथ है
सभी मानक उपयोगिताओं को खोजने की गारंटी। यदि या तो -V or -v विकल्प है
आपूर्ति की गई, का विवरण आदेश मुद्रित है. -v विकल्प एक शब्द का कारण बनता है
आह्वान करने के लिए उपयोग किए गए कमांड या फ़ाइल नाम को इंगित करना आदेश प्रदर्शित किया जाना; -V
विकल्प अधिक क्रियात्मक विवरण उत्पन्न करता है। यदि -V or -v विकल्प दिया है,
यदि निकास स्थिति 0 है आदेश पाया गया, और यदि नहीं तो 1. यदि कोई भी विकल्प नहीं है
आपूर्ति की गई और कोई त्रुटि उत्पन्न हुई या आदेश पाया नहीं जा सका, निकास स्थिति 127 है।
अन्यथा, की निकास स्थिति आदेश बिल्टइन की निकास स्थिति है आदेश.

compgen [विकल्प] [शब्द]
के लिए संभावित पूर्णता मिलान उत्पन्न करें शब्द के अनुसार विकल्पएस, जो हो सकता है
कोई भी विकल्प स्वीकार किया जाए पूरा के अपवाद के साथ निर्मित -p और -r, तथा
मानक आउटपुट से मिलान लिखें। का उपयोग करते समय -F or -C विकल्प,
प्रोग्रामयोग्य समापन सुविधाओं द्वारा निर्धारित विभिन्न शेल वैरिएबल, जबकि
उपलब्ध, उपयोगी मूल्य नहीं होंगे।

मिलान उसी तरह से उत्पन्न होंगे जैसे कि प्रोग्रामयोग्य पूर्णता
कोड ने उन्हें सीधे उसी के साथ एक पूर्णता विनिर्देश से उत्पन्न किया था
झंडे. अगर शब्द निर्दिष्ट है, केवल वे पूर्णताएँ मेल खाती हैं शब्द होगा
का प्रदर्शन किया।

रिटर्न मान तब तक सत्य है जब तक कोई अमान्य विकल्प प्रदान नहीं किया जाता है, या कोई मिलान नहीं होता है
उत्पन्न।

पूरा [-abcdefgjksuv] [-o कॉम्प-विकल्प] [-डे] [-A कार्य] [-G ग्लोबपैट] [-W शब्द सूची] [-F
समारोह] [-C आदेश]
[-X फ़िल्टरपैट] [-P उपसर्ग] [-S प्रत्यय] नाम [नाम ...]
पूरा -पीआर [-डे] [नाम ...]
निर्दिष्ट करें कि प्रत्येक के लिए तर्क कैसे हैं नाम पूरा किया जाना चाहिए. यदि -p विकल्प है
आपूर्ति की जाती है, या यदि कोई विकल्प प्रदान नहीं किया जाता है, तो मौजूदा पूर्णता विनिर्देश हैं
इस तरह से मुद्रित किया गया है कि उन्हें इनपुट के रूप में पुन: उपयोग किया जा सके। -r विकल्प a को हटा देता है
प्रत्येक के लिए पूर्णता विशिष्टता नाम, या, यदि नहीं नामसभी की आपूर्ति की जाती है
पूर्णता विशिष्टताएँ. -D विकल्प इंगित करता है कि शेष विकल्प और
क्रियाएँ ``डिफ़ॉल्ट'' कमांड पूर्णता पर लागू होनी चाहिए; अर्थात् पूर्णता
एक ऐसे आदेश पर प्रयास किया गया जिसके लिए पहले कोई पूर्णता परिभाषित नहीं की गई है। -E
विकल्प इंगित करता है कि शेष विकल्प और क्रियाएं ``खाली'' पर लागू होनी चाहिए
आदेश पूरा करना; अर्थात्, रिक्त रेखा पर पूरा करने का प्रयास किया गया।

शब्द पूर्ण होने पर इन पूर्णता विशिष्टताओं को लागू करने की प्रक्रिया है
प्रयास का वर्णन ऊपर नीचे किया गया है निर्देशयोग्य समापन.

अन्य विकल्प, यदि निर्दिष्ट हैं, तो निम्नलिखित अर्थ हैं। के लिए तर्क -G,
-W, तथा -X विकल्प (और, यदि आवश्यक हो,) -P और -S विकल्प) को उद्धृत किया जाना चाहिए
से पहले उन्हें विस्तार से बचाएं पूरा बिल्टिन का आह्वान किया गया है।
-o कॉम्प-विकल्प
RSI कॉम्प-विकल्प कॉम्पस्पेक के व्यवहार के कई पहलुओं को नियंत्रित करता है
पूर्णताओं की सरल पीढ़ी। कॉम्प-विकल्प इनमें से एक हो सकता है:
bashdefault
शेष डिफ़ॉल्ट निष्पादित करें खूब जोर से पीटना पूर्णता यदि कॉम्पस्पेक
कोई मिलान उत्पन्न नहीं करता.
चूक यदि कॉम्पस्पेक है तो रीडलाइन के डिफ़ॉल्ट फ़ाइल नाम को पूरा करने का उपयोग करें
कोई मिलान उत्पन्न नहीं करता.
dirnames
यदि कंपस्पेक नंबर उत्पन्न करता है तो निर्देशिका नाम पूरा करें
मेल खाता है।
फ़ाइल नाम
रीडलाइन को बताएं कि कॉम्पस्पेक फ़ाइल नाम उत्पन्न करता है, इसलिए यह कर सकता है
कोई भी फ़ाइल नाम-विशिष्ट प्रसंस्करण करें (जैसे इसमें स्लैश जोड़ना)।
निर्देशिका नाम, विशेष वर्ण उद्धृत करना, या दबाना
संबद्ध पिछले स्थान)। शेल फ़ंक्शंस के साथ उपयोग करने का इरादा है।
कोई उद्धरण नहीं रीडलाइन से कहें कि यदि पूर्ण शब्द हैं तो उन्हें उद्धृत न करें
फ़ाइल नाम (फ़ाइल नाम उद्धृत करना डिफ़ॉल्ट है)।
कोई जगह नहीं रीडलाइन को बताएं कि शब्दों के साथ कोई स्थान (डिफ़ॉल्ट) न जोड़ें
पंक्ति के अंत में पूरा हुआ.
प्लसडिर्स
कॉम्पस्पेक द्वारा परिभाषित किसी भी मिलान के उत्पन्न होने के बाद, निर्देशिका
नाम पूरा करने का प्रयास किया जाता है और कोई भी मिलान इसमें जोड़ा जाता है
अन्य कार्यों के परिणाम.
-A कार्य
RSI कार्य संभावितों की सूची तैयार करने के लिए निम्नलिखित में से एक हो सकता है
पूर्णताएँ:
उर्फ उपनाम नाम. के रूप में भी निर्दिष्ट किया जा सकता है -a.
arrayvar
चर नाम व्यवस्थित करें.
बंधन ReadLine कुंजी बाइंडिंग नाम.
builtin शेल निर्मित कमांड के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -b.
आदेश आदेश के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -c.
डायरेक्टरी
निर्देशिका नाम. के रूप में भी निर्दिष्ट किया जा सकता है -d.
विकलांग
अक्षम शेल बिल्टिन के नाम.
सक्षम सक्षम शेल बिल्टिन के नाम.
निर्यात निर्यातित शेल वेरिएबल्स के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -e.
पट्टिका फ़ाइल नाम. के रूप में भी निर्दिष्ट किया जा सकता है -f.
समारोह
शेल फ़ंक्शंस के नाम.
समूह समूह के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -g.
मदद विषय
द्वारा स्वीकृत विषयों की सहायता करें मदद बिल्टिन।
मेजबाननाम
होस्टनाम, जैसा कि निर्दिष्ट फ़ाइल से लिया गया है होस्टफ़ाइल खोल
चर।
काम कार्य के नाम, यदि कार्य नियंत्रण सक्रिय है। के रूप में भी निर्दिष्ट किया जा सकता है -j.
कीवर्ड शैल आरक्षित शब्द. के रूप में भी निर्दिष्ट किया जा सकता है -k.
दौड़ना यदि कार्य नियंत्रण सक्रिय है तो चल रहे कार्यों के नाम।
सेवा सेवा के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -s.
सेटोप्टो के लिए मान्य तर्क -o विकल्प सेट बिल्टिन।
दुकान शेल विकल्प नाम जैसा कि स्वीकृत है दुकान बिल्टिन।
संकेत संकेत नाम.
रोक रुके हुए कार्यों के नाम, यदि कार्य नियंत्रण सक्रिय है।
उपयोगकर्ता उपयोगकर्ता नाम. के रूप में भी निर्दिष्ट किया जा सकता है -u.
परिवर्तनशील
सभी शेल वेरिएबल्स के नाम. के रूप में भी निर्दिष्ट किया जा सकता है -v.
-C आदेश
आदेश एक सबशेल वातावरण में निष्पादित किया जाता है, और इसके आउटपुट का उपयोग इस प्रकार किया जाता है
संभावित पूर्णताएँ.
-F समारोह
शैल फ़ंक्शन समारोह वर्तमान शेल वातावरण में निष्पादित किया जाता है।
जब फ़ंक्शन निष्पादित होता है, तो पहला तर्क ($1) का नाम है
आदेश जिसके तर्क पूरे हो रहे हैं, दूसरा तर्क ($2) है
शब्द पूरा हो रहा है, और तीसरा तर्क ($3) पूर्ववर्ती शब्द है
शब्द वर्तमान कमांड लाइन पर पूरा किया जा रहा है। जब यह ख़त्म हो जायेगा,
संभावित पूर्णताएँ के मान से पुनर्प्राप्त की जाती हैं अनुपालन करें
सरणी चर.
-G ग्लोबपैट
पथनाम विस्तार पैटर्न ग्लोबपैट संभव उत्पन्न करने के लिए विस्तार किया गया है
पूर्णताएँ
-P उपसर्ग
उपसर्ग आख़िरकार प्रत्येक संभावित समापन की शुरुआत में जोड़ा जाता है
अन्य विकल्प लागू किये गये हैं।
-S प्रत्यय
प्रत्यय अन्य सभी विकल्पों के बाद प्रत्येक संभावित पूर्णता के साथ जोड़ा जाता है
लागू किया गया है।
-W शब्द सूची
RSI शब्द सूची में वर्णों का उपयोग करके विभाजित किया गया है आईएफएस विशेष चर के रूप में
सीमांकक, और प्रत्येक परिणामी शब्द का विस्तार किया जाता है। संभावित पूर्णताएँ
परिणामी सूची के वे सदस्य हैं जो पूर्ण किए जा रहे शब्द से मेल खाते हैं।
-X फ़िल्टरपैट
फ़िल्टरपैट पथनाम विस्तार के लिए उपयोग किया जाने वाला एक पैटर्न है। इसे लागू किया जाता है
पूर्ववर्ती विकल्पों द्वारा उत्पन्न संभावित पूर्णताओं की सूची और
तर्क, और प्रत्येक पूर्णता का मिलान फ़िल्टरपैट सूची से हटा दिया गया है.
एक अग्रणी ! in फ़िल्टरपैट पैटर्न को नकारता है; इस मामले में, कोई भी पूर्णता
मिलान नहीं फ़िल्टरपैट हटा दी है।

रिटर्न मान तब तक सत्य है जब तक कोई अमान्य विकल्प, इसके अलावा कोई अन्य विकल्प प्रदान नहीं किया जाता है
-p or -r के बिना आपूर्ति की जाती है नाम तर्क, हटाने का प्रयास किया जाता है
ए के लिए पूर्णता विशिष्टता नाम जिसके लिए कोई विशिष्टता मौजूद नहीं है, या कोई त्रुटि है
एक पूर्णता विनिर्देश जोड़ने पर होता है।

कॉम्पोप्ट [-o विकल्प] [-डे] [+o विकल्प] [नाम]
प्रत्येक के लिए पूर्णता विकल्पों को संशोधित करें नाम के अनुसार विकल्पs, या के लिए
यदि नहीं, तो वर्तमान में निष्पादन पूरा हो रहा है नामकी आपूर्ति की जाती है. अगर कोई नहीं विकल्पs दिए गए हैं,
प्रत्येक के लिए पूर्णता विकल्प प्रदर्शित करें नाम या वर्तमान पूर्णता.
के संभावित मान विकल्प क्या वे इसके लिए वैध हैं? पूरा बिल्टिन ऊपर वर्णित है।
RSI -D विकल्प इंगित करता है कि शेष विकल्प ``डिफ़ॉल्ट'' पर लागू होने चाहिए
आदेश पूरा करना; अर्थात्, एक आदेश पर पूरा करने का प्रयास किया गया जिसके लिए नहीं
पूर्णता को पहले परिभाषित किया गया है। -E विकल्प इंगित करता है कि शेष
विकल्प ``खाली'' कमांड पूर्णता पर लागू होने चाहिए; अर्थात् पूरा करने का प्रयास किया गया
एक रिक्त रेखा पर.

रिटर्न मान तब तक सत्य है जब तक कोई अमान्य विकल्प प्रदान नहीं किया जाता है, प्रयास नहीं किया जाता है
a के लिए विकल्पों को संशोधित करने के लिए नाम जिसके लिए कोई पूर्णता विनिर्देश मौजूद नहीं है, या
एक आउटपुट त्रुटि उत्पन्न होती है.

जारी रखने के [n]
संलग्नक के अगले पुनरावृत्ति को फिर से शुरू करें एसटी , जब, जब तकया, चयन कुंडली। अगर n
निर्दिष्ट है, पर फिर से शुरू करें nवें घेरने वाला लूप। n होना चाहिए ≥ 1. यदि n से बड़ा है
संलग्न लूप की संख्या की तुलना में, अंतिम संलग्न लूप (``शीर्ष-स्तर'')
लूप) फिर से शुरू हो गया है। जब तक रिटर्न मान 0 न हो n से अधिक या उसके बराबर नहीं है
1.

घोषित [-aAfFgilnrtux] [-p] [नाम[=मूल्य] ...]
टाइपसेट [-aAfFgilnrtux] [-p] [नाम[=मूल्य] ...]
चर घोषित करें और/या उन्हें विशेषताएँ दें। अगर कोई नहीं नामs दिए गए हैं तो प्रदर्शित करें
चरों का मान. -p विकल्प की विशेषताएँ और मान प्रदर्शित करेगा
से प्रत्येक नाम. जब -p के साथ प्रयोग किया जाता है नाम तर्क, अतिरिक्त विकल्प, के अलावा अन्य -f
और -F, नजरअंदाज कर दिया जाता है। कब -p के बिना आपूर्ति की जाती है नाम तर्क, यह प्रदर्शित होगा
द्वारा निर्दिष्ट विशेषताओं वाले सभी चरों की विशेषताएँ और मान
अतिरिक्त विकल्प। यदि कोई अन्य विकल्प उपलब्ध नहीं कराया गया है -p, घोषित प्रदर्शित करेगा
सभी शेल वेरिएबल्स की विशेषताएँ और मान। -f विकल्प प्रतिबंधित करेगा
शेल फ़ंक्शंस को प्रदर्शित करें। -F विकल्प फ़ंक्शन के प्रदर्शन को रोकता है
परिभाषाएँ; केवल फ़ंक्शन नाम और विशेषताएँ मुद्रित की जाती हैं। यदि extdebug
शेल विकल्प का उपयोग करके सक्षम किया गया है दुकान, स्रोत फ़ाइल का नाम और लाइन नंबर जहां
फ़ंक्शन परिभाषित किया गया है और साथ ही प्रदर्शित किया गया है। -F विकल्प का तात्पर्य है -f-g
विकल्प वैरिएबल को वैश्विक दायरे में बनाने या संशोधित करने के लिए बाध्य करता है, तब भी जब
घोषित शेल फ़ंक्शन में निष्पादित किया जाता है। अन्य सभी मामलों में इसे नजरअंदाज कर दिया जाता है।
आउटपुट को निर्दिष्ट चरों तक सीमित करने के लिए निम्नलिखित विकल्पों का उपयोग किया जा सकता है
विशेषता या चर विशेषताएँ देने के लिए:
-a से प्रत्येक नाम एक अनुक्रमित सरणी चर है (देखें Arrays ऊपर)।
-A से प्रत्येक नाम एक साहचर्य सरणी चर है (देखें Arrays ऊपर)।
-f केवल फ़ंक्शन नामों का उपयोग करें.
-i चर को पूर्णांक के रूप में माना जाता है; अंकगणितीय मूल्यांकन (देखें) अंकगणित
मूल्यांकन उपरोक्त) तब निष्पादित होता है जब वेरिएबल को एक मान निर्दिष्ट किया जाता है।
-l जब वेरिएबल को एक मान निर्दिष्ट किया जाता है, तो सभी अपर-केस वर्ण होते हैं
लोअरकेस में परिवर्तित किया गया। अपरकेस विशेषता अक्षम है.
-n प्रत्येक दे दो नाम la नामरेफ विशेषता, इसे दूसरे का नाम संदर्भ बनाती है
चर। उस अन्य चर को के मान से परिभाषित किया जाता है नाम। सभी
के संदर्भ और असाइनमेंट नाम, बदलने के अलावा -n गुण
स्वयं, द्वारा संदर्भित चर पर प्रदर्शन किया जाता है नामका मूल्य. -n
विशेषता को सरणी चर पर लागू नहीं किया जा सकता है।
-r बनाना नामकेवल पढ़ने के लिए. फिर इन नामों को मान निर्दिष्ट नहीं किया जा सकता
बाद के असाइनमेंट स्टेटमेंट या अनसेट।
-t प्रत्येक दे दो नाम la निशान गुण। ट्रेस किए गए फ़ंक्शन इनहेरिट करते हैं डीबग और
वापसी कॉलिंग शेल से जाल। ट्रेस विशेषता का कोई विशेष महत्व नहीं है
चर के लिए अर्थ.
-u जब वेरिएबल को एक मान निर्दिष्ट किया जाता है, तो सभी लोअर-केस वर्ण होते हैं
अपरकेस में परिवर्तित। लोअर-केस विशेषता अक्षम है.
-x मार्क नामपर्यावरण के माध्यम से बाद के आदेशों में निर्यात के लिए।

`-' के बजाय `+' का उपयोग करने से इसके अपवादों के साथ विशेषता बंद हो जाती है
+a किसी ऐरे वेरिएबल को नष्ट करने के लिए इसका उपयोग नहीं किया जा सकता है +r केवल पढ़ने योग्य को नहीं हटाएगा
गुण। जब किसी फ़ंक्शन में उपयोग किया जाता है, घोषित और टाइपसेट प्रत्येक बनाओ नाम स्थानीय, जैसे
साथ स्थानीय आदेश, जब तक कि -g विकल्प उपलब्ध कराया गया है। यदि कोई वेरिएबल नाम है
उसके बाद =मूल्य, वेरिएबल का मान सेट किया गया है मूल्य। उपयोग करते समय -a or -A
और सरणी चर, अतिरिक्त विशेषताएँ बनाने के लिए कंपाउंड असाइनमेंट सिंटैक्स
आगामी असाइनमेंट तक प्रभावी न हों। रिटर्न मान 0 है जब तक कि a
अमान्य विकल्प का सामना करना पड़ता है, ``-f का उपयोग करके फ़ंक्शन को परिभाषित करने का प्रयास किया जाता है
foo=bar'', केवल पढ़ने योग्य चर के लिए एक मान निर्दिष्ट करने का प्रयास किया जाता है, एक प्रयास
कंपाउंड का उपयोग किए बिना किसी ऐरे वेरिएबल को मान निर्दिष्ट करने के लिए बनाया गया है
असाइनमेंट सिंटैक्स (देखें) Arrays ऊपर), में से एक नामों वैध शेल नहीं है
परिवर्तनीय नाम, केवल पढ़ने के लिए स्थिति को बंद करने का प्रयास किया जाता है
वेरिएबल, किसी ऐरे वेरिएबल के लिए ऐरे स्थिति को बंद करने का प्रयास किया जाता है, या
एक गैर-मौजूद फ़ंक्शन को प्रदर्शित करने का प्रयास किया गया है -f.

dirs [-सीएलपीवी] [+n] [-n]
विकल्पों के बिना, वर्तमान में याद की गई निर्देशिकाओं की सूची प्रदर्शित करता है।
डिफॉल्ट डिस्प्ले एक पंक्ति में होता है जिसमें निर्देशिका नाम रिक्त स्थान से अलग होते हैं।
निर्देशिकाओं को सूची में जोड़ा जाता है pushd आदेश; NS popd आदेश हटा देता है
सूची से प्रविष्टियाँ.
-c सभी प्रविष्टियों को हटाकर निर्देशिका स्टैक साफ़ करता है।
-l पूर्ण पथनामों का उपयोग करके एक सूची तैयार करता है; डिफ़ॉल्ट सूचीकरण प्रारूप का उपयोग करता है
होम डायरेक्टरी को दर्शाने के लिए टिल्ड।
-p प्रति पंक्ति एक प्रविष्टि के साथ निर्देशिका स्टैक प्रिंट करें।
-v प्रति पंक्ति एक प्रविष्टि के साथ निर्देशिका स्टैक प्रिंट करें, प्रत्येक प्रविष्टि के साथ उपसर्ग लगाएं
स्टैक में इसका सूचकांक।
+n प्रदर्शित करता है nद्वारा दिखाई गई सूची के बाईं ओर से गिनती करते हुए वें प्रविष्टि dirs कब
शून्य से प्रारंभ करते हुए, बिना किसी विकल्प के आह्वान किया गया।
-n प्रदर्शित करता है nद्वारा दिखाई गई सूची के दाईं ओर से गिनती करते हुए वें प्रविष्टि dirs
जब बिना विकल्पों के आह्वान किया जाता है, तो शून्य से शुरू होता है।

जब तक कोई अमान्य विकल्प प्रदान नहीं किया जाता है, तब तक रिटर्न मान 0 होता है n सूचकांक से परे
निर्देशिका स्टैक का अंत.

अस्वीकार [-र] [-h] [जॉबस्पेक ...]
विकल्पों के बिना, प्रत्येक को हटा दें जॉबस्पेक सक्रिय नौकरियों की तालिका से. अगर जॉबस्पेक is
मौजूद नहीं है, और न ही -a न ही -r विकल्प प्रदान किया गया है, वर्तमान काम is
इस्तेमाल किया गया। यदि -h प्रत्येक विकल्प दिया गया है जॉबस्पेक तालिका से हटाया नहीं गया है, लेकिन
इसलिए चिन्हित किया गया है उच्छ्वास करो यदि शेल को प्राप्त होता है तो उसे कार्य पर नहीं भेजा जाता है उच्छ्वास करो. अगर
नहीं जॉबस्पेक आपूर्ति की जाती है, -a विकल्प का अर्थ है सभी नौकरियों को हटाना या चिह्नित करना; -r
ए के बिना विकल्प जॉबस्पेक तर्क संचालन को कार्य चलाने तक ही सीमित रखता है। वापसी
मान 0 है जब तक कि a जॉबस्पेक कोई वैध कार्य निर्दिष्ट नहीं करता.

गूंज [-नीई] [arg ...]
आउटपुट args, रिक्त स्थान द्वारा अलग किया गया, उसके बाद एक नई पंक्ति। वापसी की स्थिति है
0 जब तक कोई लेखन त्रुटि न हो। अगर -n निर्दिष्ट है, अनुगामी नई पंक्ति है
दबा दिया गया. यदि -e विकल्प दिया गया है, निम्नलिखित बैकस्लैश की व्याख्या-
एस्केप्ड कैरेक्टर सक्षम है. -E विकल्प इनकी व्याख्या को अक्षम कर देता है
एस्केप वर्ण, यहां तक ​​कि उन प्रणालियों पर भी जहां डिफ़ॉल्ट रूप से उनकी व्याख्या की जाती है।
xpg_echo शेल विकल्प का उपयोग गतिशील रूप से यह निर्धारित करने के लिए किया जा सकता है कि क्या है या नहीं गूंज
डिफ़ॉल्ट रूप से इन एस्केप वर्णों का विस्तार करता है। गूंज व्याख्या नहीं करता -- का मतलब है
विकल्पों का अंत. गूंज निम्नलिखित पलायन अनुक्रमों की व्याख्या करता है:
\a चेतावनी (घंटी)
\b बैकस्पेस
\c आगे के आउटपुट को दबाएँ
\e
\E एक भागने का पात्र
\f फ़ीड बनाएं
\n नई पंक्ति
\r कैरिज रिटर्न
\t क्षैतिज टैब
\v लंबवत टैब
\\ बैकस्लैश
\0NNN आठ-बिट वर्ण जिसका मान अष्टक मान है NNN (शून्य से तीन
अष्टक अंक)
\xHH आठ-बिट वर्ण जिसका मान हेक्साडेसिमल मान है HH (एक अथवा दो
हेक्स अंक)
\uएचएचएचएच यूनिकोड (आईएसओ/आईईसी 10646) वर्ण जिसका मान हेक्साडेसिमल मान है
एचएचएचएच (एक से चार हेक्स अंक)
\Uहह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह
यूनिकोड (आईएसओ/आईईसी 10646) वर्ण जिसका मान हेक्साडेसिमल मान है
हह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह्ह (एक से आठ हेक्स अंक)

सक्षम [-a] [-डीएनपीएस] [-f फ़ाइल का नाम] [नाम ...]
अंतर्निहित शेल कमांड को सक्षम और अक्षम करें। बिल्टइन को अक्षम करने से एक डिस्क को अनुमति मिलती है
कमांड जिसका नाम बिना निष्पादित किए जाने वाले शेल बिल्टिन के समान है
एक पूर्ण पथनाम निर्दिष्ट करना, भले ही शेल सामान्यतः बिल्टिन की खोज करता हो
डिस्क कमांड से पहले. अगर -n प्रत्येक का प्रयोग किया जाता है नाम अक्षम है; अन्यथा, नामों रहे
सक्षम. उदाहरण के लिए, का उपयोग करने के लिए परीक्षण बाइनरी के माध्यम से पाया गया पथ के स्थान पर
शेल निर्मित संस्करण, ``enable -n test'' चलाएँ। -f विकल्प का अर्थ है नया लोड करना
अंतर्निहित आदेश नाम साझा वस्तु से फ़ाइल का नाम, उन प्रणालियों पर जो गतिशील का समर्थन करते हैं
लोड हो रहा है। -d विकल्प पहले से लोड किए गए बिल्ट-इन को हटा देगा -f। यदि नही
नाम तर्क दिए गए हैं, या यदि -p विकल्प प्रदान किया गया है, शेल बिल्टिन की एक सूची
मुद्रित है. कोई अन्य विकल्प तर्क नहीं होने से, सूची में सभी सक्षम शेल शामिल हैं
बिल्टिंस. अगर -n आपूर्ति की जाती है, केवल अक्षम बिल्टिन मुद्रित होते हैं। अगर -a is
आपूर्ति की गई, मुद्रित सूची में सभी बिल्टिन शामिल हैं, यह संकेत देते हुए कि क्या या
प्रत्येक सक्षम नहीं है. अगर -s आपूर्ति की जाती है, आउटपुट POSIX तक सीमित है
विशेष बिल्टिंस. रिटर्न मान 0 है जब तक कि a नाम एक शेल निर्मित या नहीं है
किसी साझा ऑब्जेक्ट से नया बिल्टिन लोड करने में त्रुटि हुई है।

विकसित करना [arg ...]
RSI args को पढ़ा जाता है और एक साथ एक ही कमांड में संयोजित किया जाता है। यह आदेश है
फिर शेल द्वारा पढ़ा और निष्पादित किया जाता है, और इसकी निकास स्थिति मान के रूप में वापस कर दी जाती है
of विकसित करना. यदि नहीं हैं आर्ग, या केवल शून्य तर्क, विकसित करना रिटर्न 0।

कार्यकारी [-NS] [-a नाम] [आदेश [तर्क]]
If आदेश निर्दिष्ट है, यह शेल को प्रतिस्थापित करता है। कोई नई प्रक्रिया नहीं बनाई गई है.
तर्क के लिए तर्क बन जाते हैं आदेश। अगर -l विकल्प की आपूर्ति की जाती है, खोल
पास किए गए शून्यवें तर्क की शुरुआत में एक डैश लगाता है आदेश। ये है
क्या लॉग इन(1) करता है. -c विकल्प कारण आदेश खाली के साथ निष्पादित किया जाना है
वातावरण। अगर -a आपूर्ति की जाती है, शेल गुजर जाता है नाम शून्यवें तर्क के रूप में
निष्पादित आदेश. अगर आदेश किसी कारण से निष्पादित नहीं किया जा सकता, एक गैर-
इंटरैक्टिव शेल बाहर निकलता है, जब तक कि निष्फल शेल विकल्प सक्षम है. के कारण से
मामले में, यह विफलता लौटाता है। यदि फ़ाइल विफल हो जाती है तो एक इंटरैक्टिव शेल विफलता लौटाता है
सज़ा पाएं। अगर आदेश निर्दिष्ट नहीं है, कोई भी पुनर्निर्देशन प्रभावी होता है
वर्तमान शेल, और रिटर्न स्थिति 0 है। यदि कोई पुनर्निर्देशन त्रुटि है, तो
वापसी की स्थिति 1 है.

निकास [n]
शेल को स्थिति के साथ बाहर निकलने का कारण बनाएं n. अगर n छोड़ा गया है, निकास स्थिति है
निष्पादित अंतिम आदेश का। एक जाल चालू बाहर निकलें शेल से पहले निष्पादित किया जाता है
समाप्त करता है।

निर्यात [-फां] [नाम[=शब्द]] ...
निर्यात -p
की आपूर्ति की नामों के वातावरण में स्वचालित निर्यात के लिए चिह्नित हैं
बाद में निष्पादित आदेश। यदि -f विकल्प दिया गया है, नामों का उल्लेख करने
कार्य. अगर कोई नहीं नामों दिए गए हैं, या यदि -p विकल्प प्रदान किया गया है, नामों की एक सूची
सभी निर्यातित वेरिएबल मुद्रित होते हैं। -n विकल्प निर्यात संपत्ति का कारण बनता है
प्रत्येक से हटा दिया जाए नाम. यदि किसी वेरिएबल नाम के बाद = आता हैशब्द, का मूल्य
वेरिएबल को सेट किया गया है शब्द. निर्यात जब तक यह अमान्य न हो, 0 की निकास स्थिति लौटाता है
विकल्पों में से एक का सामना करना पड़ता है नामों वैध शेल वैरिएबल नाम नहीं है, या -f
के साथ आपूर्ति की जाती है नाम वह कोई फ़ंक्शन नहीं है.

fc [-e नाम बदलना] [-एलएनआर] [प्रथम] [पिछली बार]
fc -s [थपथपाना=प्रतिनिधि] [सीएमडी]
पहला फॉर्म कमांड की एक श्रृंखला का चयन करता है प्रथम सेवा मेरे पिछली बार इतिहास सूची से
और उन्हें प्रदर्शित या संपादित और पुनः निष्पादित करता है। प्रथम और पिछली बार के रूप में निर्दिष्ट किया जा सकता है
स्ट्रिंग (उस स्ट्रिंग से शुरू होने वाले अंतिम कमांड का पता लगाने के लिए) या एक संख्या के रूप में (an
इतिहास सूची में अनुक्रमणिका, जहां एक ऋणात्मक संख्या का उपयोग ऑफसेट के रूप में किया जाता है
वर्तमान आदेश संख्या). अगर पिछली बार निर्दिष्ट नहीं है यह वर्तमान कमांड पर सेट है
लिस्टिंग के लिए (ताकि ``fc -l -10'' अंतिम 10 कमांड प्रिंट करे) और प्रथम
अन्यथा। अगर प्रथम निर्दिष्ट नहीं है, यह संपादन के लिए पिछले कमांड पर सेट है
और लिस्टिंग के लिए -16।

RSI -n सूचीबद्ध करते समय विकल्प कमांड संख्याओं को दबा देता है। -r विकल्प उलट जाता है
आदेशों का क्रम. यदि -l विकल्प दिया गया है, आदेश सूचीबद्ध हैं
मानक आउटपुट. अन्यथा, संपादक द्वारा दिया गया नाम बदलना एक फ़ाइल पर लागू किया गया है
उन आदेशों से युक्त। अगर नाम बदलना का मूल्य नहीं दिया गया है एफसीईडीआईटी परिवर्तनशील
प्रयोग किया जाता है, और का मूल्य संपादक if एफसीईडीआईटी सेट नहीं है. यदि कोई भी वेरिएबल सेट नहीं है,
vi प्रयोग किया जाता है। जब संपादन पूरा हो जाता है, तो संपादित आदेश प्रतिध्वनित होते हैं और निष्पादित होते हैं।

दूसरे रूप में, आदेश के प्रत्येक उदाहरण के बाद पुनः निष्पादित किया जाता है थपथपाना के स्थान पर आ गया है
by प्रतिनिधि. आदेश के समान ही समझा जाता है प्रथम ऊपर। उपयोग करने के लिए एक उपयोगी उपनाम
यह ``r='fc -s'' है, जिससे कि ``r cc'' टाइप करने से शुरू होने वाला अंतिम कमांड चलता है
``cc'' और ``r'' टाइप करने से अंतिम कमांड पुनः निष्पादित होता है।

यदि पहले फॉर्म का उपयोग किया जाता है, तो रिटर्न मान 0 है जब तक कि कोई अमान्य विकल्प न हो
सामना करना पड़ा या प्रथम or पिछली बार इतिहास पंक्तियों को सीमा से बाहर निर्दिष्ट करें। यदि -e विकल्प
आपूर्ति की जाती है, रिटर्न मान निष्पादित या विफलता वाले अंतिम कमांड का मान है
यदि आदेशों की अस्थायी फ़ाइल में कोई त्रुटि होती है। यदि दूसरा रूप है
उपयोग किया गया है, वापसी की स्थिति वह है जो कमांड को फिर से निष्पादित किया गया है, जब तक कि सीएमडी नहीं होता है
ऐसी स्थिति में, एक वैध इतिहास पंक्ति निर्दिष्ट करें fc विफलता लौटाता है.

fg [जॉबस्पेक]
फिर से शुरू जॉबस्पेक अग्रभूमि में, और इसे वर्तमान कार्य बनाएं। अगर जॉबस्पेक नहीं है
वर्तमान, शैल की धारणा वर्तमान काम प्रयोग किया जाता है। वापसी मूल्य वह है
अग्रभूमि में रखे गए आदेश का, या कार्य नियंत्रण होने पर चलाने पर विफलता
अक्षम या, जब कार्य नियंत्रण सक्षम के साथ चलाया जाता है, यदि जॉबस्पेक कोई वैध निर्दिष्ट नहीं करता
नौकरी या जॉबस्पेक उस कार्य को निर्दिष्ट करता है जो कार्य नियंत्रण के बिना शुरू किया गया था।

गेटअप ऑप्टस्ट्रिंग नाम [आर्ग]
गेटअप स्थितीय मापदंडों को पार्स करने के लिए शेल प्रक्रियाओं द्वारा उपयोग किया जाता है। ऑप्टस्ट्रिंग
पहचाने जाने वाले विकल्प वर्ण शामिल हैं; यदि किसी वर्ण के बाद a आता है
कोलन, विकल्प में एक तर्क होने की उम्मीद है, जिसे अलग किया जाना चाहिए
यह सफेद स्थान द्वारा. कोलन और प्रश्न चिह्न वर्णों का उपयोग नहीं किया जा सकता है
विकल्प वर्ण. हर बार इसका आह्वान किया जाता है, गेटअप में अगला विकल्प रखता है
खोल चर नाम, प्रारंभ करना नाम यदि यह अस्तित्व में नहीं है, और का सूचकांक
अगले तर्क को वेरिएबल में संसाधित किया जाना है ऑप्टिंड. ऑप्टिंड 1 से प्रारंभ किया गया है
हर बार शेल या शेल स्क्रिप्ट लागू की जाती है। जब किसी विकल्प के लिए एक की आवश्यकता होती है
बहस, गेटअप उस तर्क को वेरिएबल में रखता है ऑप्टारजी. खोल करता है
रीसेट नहीं ऑप्टिंड खुद ब खुद; इसे एकाधिक कॉलों के बीच मैन्युअल रूप से रीसेट किया जाना चाहिए
गेटअप यदि मापदंडों के एक नए सेट का उपयोग किया जाना है तो उसी शेल आमंत्रण के भीतर।

जब विकल्पों का अंत सामने आता है, गेटअप अधिक रिटर्न मान के साथ बाहर निकलता है
शून्य की तुलना में। ऑप्टिंड पहले गैर-विकल्प तर्क के सूचकांक पर सेट किया गया है, और नाम
इसके लिए सेट है ?।

गेटअप आम तौर पर स्थितीय मापदंडों को पार्स करता है, लेकिन यदि अधिक तर्क दिए जाते हैं
in आर्ग, गेटअप इसके बजाय उनको पार्स करता है।

गेटअप त्रुटियों की रिपोर्ट दो प्रकार से कर सकते हैं. यदि का पहला अक्षर ऑप्टस्ट्रिंग एक
बृहदांत्र, मूक त्रुटि रिपोर्टिंग का उपयोग किया जाता है. सामान्य ऑपरेशन में, डायग्नोस्टिक संदेश
अमान्य विकल्प या अनुपलब्ध विकल्प तर्क सामने आने पर मुद्रित किए जाते हैं। अगर
चर ओप्टरर 0 पर सेट है, कोई त्रुटि संदेश प्रदर्शित नहीं किया जाएगा, भले ही
का पहला पात्र ऑप्टस्ट्रिंग कोलन नहीं है.

यदि कोई अमान्य विकल्प दिखाई देता है, गेटअप स्थानों ? में नाम और, यदि चुप नहीं है, तो प्रिंट करता है
एक त्रुटि संदेश और अनसेट ऑप्टारजी. अगर गेटअप मौन है, विकल्प वर्ण
पाया गया में रखा गया है ऑप्टारजी और कोई निदान संदेश मुद्रित नहीं होता है.

यदि कोई आवश्यक तर्क नहीं मिलता है, और गेटअप चुप नहीं है, एक प्रश्नचिह्न (?)
में रखा गया है नाम, ऑप्टारजी अनसेट है, और एक निदान संदेश मुद्रित होता है। अगर
गेटअप मौन है, फिर एक कोलन (:) में रखा गया है नाम और ऑप्टारजी पर सेट है
विकल्प वर्ण मिला.

गेटअप यदि कोई विकल्प, निर्दिष्ट या अनिर्दिष्ट, पाया जाता है तो सत्य लौटाता है। यह लौट आता है
यदि विकल्पों का अंत सामने आता है या कोई त्रुटि होती है तो गलत।

हैश [-एलआरई] [-p फ़ाइल का नाम] [-डीटी] [नाम]
हर बार हैश लागू किया गया है, कमांड का पूरा पथनाम नाम इसके द्वारा निर्धारित किया जाता है
में निर्देशिकाओं को खोजना $ पथ और याद आया. कोई भी पहले से याद किया हुआ
पथनाम हटा दिया गया है. यदि -p विकल्प प्रदान किया गया है, कोई पथ खोज नहीं की गई है,
और फ़ाइल का नाम कमांड के पूर्ण फ़ाइल नाम के रूप में उपयोग किया जाता है। -r विकल्प का कारण बनता है
सभी याद किए गए स्थानों को भूलने के लिए शेल। -d विकल्प शेल को भूलने का कारण बनता है
प्रत्येक का याद किया गया स्थान नाम। अगर -t विकल्प प्रदान किया गया है, पूर्ण
प्रत्येक का पथनाम नाम अनुरूप मुद्रित है. यदि एकाधिक नाम तर्क हैं
के साथ आपूर्ति की -t, नाम हैश किए गए पूर्ण पथनाम से पहले मुद्रित किया जाता है। -l
विकल्प के कारण आउटपुट एक ऐसे प्रारूप में प्रदर्शित होता है जिसे इनपुट के रूप में पुन: उपयोग किया जा सकता है। अगर
कोई तर्क नहीं दिया गया है, या दिया भी गया है तो नहीं -l प्रदान की जाती है, याद के बारे में जानकारी
आदेश मुद्रित है. वापसी की स्थिति तब तक सत्य है जब तक कि a नाम नहीं मिला है या एक
अमान्य विकल्प दिया गया है.

मदद [-डीएमएस] [पैटर्न]
अंतर्निहित आदेशों के बारे में उपयोगी जानकारी प्रदर्शित करें। अगर पैटर्न अधिकृत है, मदद
सभी आदेशों के मिलान पर विस्तृत सहायता देता है पैटर्न; अन्यथा सभी के लिए मदद
बिल्टिन और शेल नियंत्रण संरचनाएं मुद्रित होती हैं।
-d प्रत्येक का संक्षिप्त विवरण प्रदर्शित करें पैटर्न
-m प्रत्येक का विवरण प्रदर्शित करें पैटर्न मैनपेज-जैसे प्रारूप में
-s प्रत्येक के लिए केवल संक्षिप्त उपयोग सारांश प्रदर्शित करें पैटर्न

जब तक कोई कमांड मेल नहीं खाता, रिटर्न स्थिति 0 है पैटर्न.

इतिहास [n]
इतिहास -c
इतिहास -d ओफ़्सेट
इतिहास -anrw [फ़ाइल का नाम]
इतिहास -p arg [arg ...]
इतिहास -s arg [arg ...]
बिना किसी विकल्प के, लाइन नंबरों के साथ कमांड इतिहास सूची प्रदर्शित करें। पंक्तियाँ सूचीबद्ध
पंजीकरण शुल्क * संशोधित किया गया है. का एक तर्क n केवल अंतिम को सूचीबद्ध करता है n पंक्तियाँ. यदि
खोल चर इतिहास समय प्रारूप सेट है और शून्य नहीं है, इसका उपयोग प्रारूप स्ट्रिंग के रूप में किया जाता है
एसटी स्ट्रैफ़टाइम(3) प्रत्येक प्रदर्शित इतिहास से जुड़े समय टिकट को प्रदर्शित करने के लिए
प्रवेश। स्वरूपित टाइम स्टैम्प और के बीच कोई मध्यवर्ती रिक्त मुद्रित नहीं किया जाता है
इतिहास रेखा. अगर फ़ाइल का नाम आपूर्ति की जाती है, इसका उपयोग इतिहास फ़ाइल के नाम के रूप में किया जाता है;
यदि नहीं, तो का मूल्य हिस्टफाइल प्रयोग किया जाता है। विकल्प, यदि आपूर्ति किए गए हैं, तो निम्नलिखित हैं
अर्थ:
-c सभी प्रविष्टियाँ हटाकर इतिहास सूची साफ़ करें।
-d ओफ़्सेट
स्थिति में इतिहास प्रविष्टि हटाएँ ओफ़्सेट.
-a ``नई'' इतिहास पंक्तियाँ जोड़ें (शुरुआत से दर्ज की गई इतिहास पंक्तियाँ)।
वर्तमान का खूब जोर से पीटना सत्र) इतिहास फ़ाइल में।
-n इतिहास फ़ाइल से पहले से न पढ़ी गई इतिहास पंक्तियाँ पढ़ें
वर्तमान इतिहास सूची. ये तब से इतिहास फ़ाइल में जुड़ी हुई पंक्तियाँ हैं
वर्तमान की शुरुआत खूब जोर से पीटना सत्र।
-r इतिहास फ़ाइल की सामग्री पढ़ें और उन्हें वर्तमान इतिहास में जोड़ें
सूची।
-w इतिहास को अधिलेखित करते हुए वर्तमान इतिहास सूची को इतिहास फ़ाइल में लिखें
फ़ाइल की सामग्री.
-p निम्नलिखित पर इतिहास प्रतिस्थापन करें आर्ग और परिणाम प्रदर्शित करें
मानक आउटपुट. परिणामों को इतिहास सूची में संग्रहीत नहीं करता. प्रत्येक
arg सामान्य इतिहास विस्तार को अक्षम करने के लिए उद्धृत किया जाना चाहिए।
-s स्टोर करें आर्ग इतिहास सूची में एकल प्रविष्टि के रूप में। में अंतिम आदेश
से पहले इतिहास सूची हटा दी जाती है आर्ग जुड़ गए है।

अगर इतिहास समय प्रारूप वैरिएबल सेट किया गया है, टाइम स्टैम्प जानकारी के साथ संबद्ध है
प्रत्येक इतिहास प्रविष्टि को इतिहास फ़ाइल में लिखा जाता है, जिसे इतिहास टिप्पणी के साथ चिह्नित किया जाता है
चरित्र। जब इतिहास फ़ाइल पढ़ी जाती है, तो इतिहास से शुरू होने वाली पंक्तियाँ टिप्पणी करती हैं
किसी अंक के तुरंत बाद आने वाले वर्ण की व्याख्या टाइमस्टैम्प के रूप में की जाती है
पिछली इतिहास पंक्ति. जब तक कोई अमान्य विकल्प न हो, रिटर्न मान 0 है
इतिहास फ़ाइल को पढ़ते या लिखते समय एक त्रुटि उत्पन्न होती है, जो अमान्य है
ओफ़्सेट को तर्क के रूप में दिया गया है -d, या इतिहास विस्तार एक के रूप में आपूर्ति की गई
करने के लिए तर्क -p विफल रहता है।

नौकरियों [-lnprs] [ जॉबस्पेक ...]
नौकरियों -x आदेश [ आर्ग ...]
पहला फॉर्म सक्रिय नौकरियों को सूचीबद्ध करता है। विकल्पों के निम्नलिखित अर्थ हैं:
-l सामान्य जानकारी के अलावा प्रक्रिया आईडी की सूची बनाएं।
-n केवल उन नौकरियों के बारे में जानकारी प्रदर्शित करें जिनकी स्थिति उपयोगकर्ता के बाद से बदल गई है
उनकी स्थिति के बारे में अंतिम बार सूचित किया गया था।
-p केवल कार्य के प्रक्रिया समूह लीडर की प्रक्रिया आईडी सूचीबद्ध करें।
-r केवल चालू कार्य प्रदर्शित करें.
-s केवल रुके हुए कार्य प्रदर्शित करें।

If जॉबस्पेक दिया गया है, आउटपुट उस कार्य के बारे में जानकारी तक ही सीमित है।
वापसी की स्थिति 0 है जब तक कि कोई अमान्य विकल्प सामने न आए या कोई अमान्य न हो जॉबस्पेक is
आपूर्ति की।

अगर -x विकल्प दिया है, नौकरियों किसी को प्रतिस्थापित करता है जॉबस्पेक में पाया आदेश or आर्ग
संबंधित प्रक्रिया समूह आईडी के साथ, और निष्पादित करता है आदेश इसे पारित करना आर्ग,
इसकी निकास स्थिति लौटा रहा है।

हत्या [-s sigspec | -n Signum | -sigspec] [पीआईडी | जॉबस्पेक]...
हत्या -l [sigspec | निकास_स्थिति]
द्वारा नामित सिग्नल भेजें sigspec or Signum द्वारा नामित प्रक्रियाओं के लिए पीआईडी or
जॉबस्पेक. sigspec या तो एक केस-असंवेदनशील सिग्नल नाम है जैसे कि सिगली (या के साथ
के बिना हस्ताक्षर उपसर्ग) या एक संकेत संख्या; Signum एक सिग्नल नंबर है. अगर sigspec
मौजूद नहीं है, तो सिगटरम ऐसा माना जाता है। का एक तर्क -l सिग्नल नाम सूचीबद्ध करता है।
यदि कोई तर्क कब प्रदान किया जाता है -l संकेतों के नाम दिए गए हैं
संबंधित तर्क सूचीबद्ध हैं, और वापसी स्थिति 0 है
निकास_स्थिति करने के लिए तर्क -l एक संख्या है जो या तो सिग्नल संख्या या को निर्दिष्ट करती है
एक सिग्नल द्वारा समाप्त की गई प्रक्रिया की निकास स्थिति। हत्या यदि कम से कम एक हो तो सत्य लौटाता है
यदि कोई त्रुटि होती है या कोई अमान्य विकल्प है तो सिग्नल सफलतापूर्वक भेजा गया है, या गलत है
सामना करना पड़ा।

चलो arg [arg ...]
से प्रत्येक arg एक अंकगणितीय अभिव्यक्ति है जिसका मूल्यांकन किया जाना है (देखें)। अंकगणित मूल्यांकन
ऊपर)। यदि आखिरी arg 0 का मूल्यांकन करता है, चलो रिटर्न 1; अन्यथा 0 लौटाया जाता है।

स्थानीय [विकल्प] [नाम[=मूल्य] ...]
प्रत्येक तर्क के लिए, एक स्थानीय चर नाम दिया गया है नाम बनाया और सौंपा गया है मूल्य
विकल्प द्वारा स्वीकृत विकल्पों में से कोई भी हो सकता है घोषित. जब स्थानीय a के अंतर्गत प्रयोग किया जाता है
फ़ंक्शन, यह वेरिएबल का कारण बनता है नाम दृश्यमान दायरा उसी तक सीमित होना
फ़ंक्शन और उसके बच्चे। बिना किसी ऑपरेंड के, स्थानीय स्थानीय की एक सूची लिखता है
मानक आउटपुट के लिए चर। इसका उपयोग करना एक त्रुटि है स्थानीय जब a के भीतर नहीं हो
समारोह। जब तक वापसी की स्थिति 0 न हो स्थानीय किसी फ़ंक्शन के बाहर उपयोग किया जाता है, a
अमान्य नाम आपूर्ति की जाती है, या नाम एक पठनीय चर है।

लॉगआउट लॉगिन शेल से बाहर निकलें.

मैपफाइल [-n गणना] [-O मूल] [-s गणना] [-t] [-u fd] [-C वापस कॉल करें] [-c मात्रा] [सरणी]
पुनः सारणी [-n गणना] [-O मूल] [-s गणना] [-t] [-u fd] [-C वापस कॉल करें] [-c मात्रा]
[सरणी]
मानक इनपुट से अनुक्रमित सरणी चर में पंक्तियाँ पढ़ें सरणीया से
फाइल डिस्क्रिप्टर fd अगर -u विकल्प उपलब्ध कराया गया है। परिवर्तनशील मैपफ़ाइल विश्व का सबसे लोकप्रिय एंव
चूक सरणी. यदि विकल्प दिए गए हैं, तो उनके निम्नलिखित अर्थ होंगे:
-n ज्यादा से ज्यादा कॉपी करें गणना लाइनें। अगर गणना 0 है, सभी पंक्तियाँ कॉपी की गई हैं।
-O को असाइन करना शुरू करें सरणी सूचकांक पर मूल. डिफ़ॉल्ट सूचकांक 0 है.
-s पहले को त्यागें गणना पंक्तियाँ पढ़ी गईं.
-t पढ़ी गई प्रत्येक पंक्ति से एक पिछली नई पंक्ति हटाएँ।
-u फ़ाइल डिस्क्रिप्टर से पंक्तियाँ पढ़ें fd मानक इनपुट के बजाय.
-C मूल्यांकन करना वापस कॉल करें हर बार मात्रा पंक्तियाँ पढ़ी जाती हैं. -c विकल्प निर्दिष्ट करता है
मात्रा.
-c प्रत्येक कॉल के बीच पढ़ी जाने वाली पंक्तियों की संख्या निर्दिष्ट करें वापस कॉल करें.

If -C के बिना निर्दिष्ट है -c, डिफ़ॉल्ट क्वांटम 5000 है। कब वापस कॉल करें is
मूल्यांकन किए जाने पर, इसे असाइन किए जाने वाले अगले सरणी तत्व का सूचकांक प्रदान किया जाता है
अतिरिक्त तर्क के रूप में उस तत्व को निर्दिष्ट की जाने वाली पंक्ति। वापस कॉल करें is
लाइन पढ़ने के बाद लेकिन सरणी तत्व असाइन करने से पहले मूल्यांकन किया जाता है।

यदि स्पष्ट मूल के साथ आपूर्ति नहीं की गई है, मैपफाइल साफ हो जाएगा सरणी असाइन करने से पहले
यह करने के लिए.

मैपफाइल जब तक कोई अमान्य विकल्प या विकल्प तर्क न हो तब तक सफलतापूर्वक लौटता है
आपूर्ति की, सरणी अमान्य या असाइन करने योग्य है, या यदि सरणी एक अनुक्रमित सरणी नहीं है.

popd [-n] [+n] [-n]
निर्देशिका स्टैक से प्रविष्टियाँ हटाता है। बिना किसी तर्क के, शीर्ष को हटा देता है
स्टैक से निर्देशिका, और निष्पादित करता है cd नई शीर्ष निर्देशिका के लिए. तर्क,
यदि आपूर्ति की गई है, तो निम्नलिखित अर्थ हैं:
-n से निर्देशिकाएँ हटाते समय निर्देशिका के सामान्य परिवर्तन को दबा देता है
स्टैक, ताकि केवल स्टैक में हेरफेर किया जा सके।
+n को हटा देता है nद्वारा दिखाई गई सूची के बाईं ओर से गिनती करते हुए वें प्रविष्टि dirs,
शून्य से शुरू. उदाहरण के लिए: ``popd +0'' पहली निर्देशिका को हटा देता है,
``popd +1'' दूसरा।
-n को हटा देता है nद्वारा दिखाई गई सूची के दाईं ओर से गिनती करते हुए वें प्रविष्टि dirs,
शून्य से शुरू. उदाहरण के लिए: ``popd -0'' अंतिम निर्देशिका को हटा देता है,
``popd -1'' अंतिम से अगला।

अगर popd आदेश सफल है, ए dirs साथ ही प्रदर्शन किया जाता है, और वापसी
स्थिति 0 है। popd यदि कोई अमान्य विकल्प सामने आता है, तो निर्देशिका गलत हो जाती है
स्टैक खाली है, एक गैर-मौजूद निर्देशिका स्टैक प्रविष्टि निर्दिष्ट है, या निर्देशिका
परिवर्तन विफल रहता है.

printf [-v था] प्रारूप [तर्क]
स्वरूपित लिखें तर्क के नियंत्रण में मानक आउटपुट के लिए
प्रारूप-v विकल्प आउटपुट को वेरिएबल को असाइन करने का कारण बनता है था बल्कि
मानक आउटपुट पर मुद्रित होने की तुलना में।

RSI प्रारूप एक वर्ण स्ट्रिंग है जिसमें तीन प्रकार की वस्तुएं होती हैं: सादा
वर्ण, जिन्हें बस मानक आउटपुट, चरित्र एस्केप अनुक्रमों में कॉपी किया जाता है,
जिन्हें मानक आउटपुट और प्रारूप विनिर्देशों में परिवर्तित और कॉपी किया जाता है,
जिनमें से प्रत्येक अगले क्रमिक मुद्रण का कारण बनता है तर्क। इसके अलावा
मानक printf(1) प्रारूप विनिर्देश, printf निम्नलिखित की व्याख्या करता है
एक्सटेंशन:
%b का कारण बनता है printf संगत में बैकस्लैश एस्केप अनुक्रमों का विस्तार करने के लिए
तर्क (सिवाय इसके कि \c आउटपुट समाप्त करता है, बैकस्लैश करता है \', \", तथा \?
हटाया नहीं जाता है, और ऑक्टल एस्केप शुरू हो जाते हैं \0 चार तक हो सकते हैं
अंक)।
%q का कारण बनता है printf संबंधित आउटपुट के लिए तर्क एक प्रारूप में जो हो सकता है
शेल इनपुट के रूप में पुन: उपयोग किया गया।
%(तारीख एफएमटी)T
का कारण बनता है printf उपयोग से उत्पन्न दिनांक-समय स्ट्रिंग को आउटपुट करने के लिए तारीख एफएमटी as
के लिए एक प्रारूप स्ट्रिंग स्ट्रैफ़टाइम(3). इसी तर्क एक पूर्णांक है
युग के बाद से सेकंड की संख्या का प्रतिनिधित्व करता है। दो विशेष तर्क
मानों का उपयोग किया जा सकता है: -1 वर्तमान समय का प्रतिनिधित्व करता है, और -2 का प्रतिनिधित्व करता है
जिस समय शेल का आह्वान किया गया था। यदि कोई तर्क निर्दिष्ट नहीं है, तो रूपांतरण व्यवहार करता है
मानो -1 दे दिया गया हो. यह सामान्य से अपवाद है printf व्यवहार.

गैर-स्ट्रिंग प्रारूप विनिर्देशकों के तर्कों को सी स्थिरांक के रूप में माना जाता है, सिवाय इसके कि ए
अग्रणी प्लस या माइनस चिह्न की अनुमति है, और यदि अग्रणी पात्र एकल या है
दोहरा उद्धरण, मान निम्नलिखित वर्ण का ASCII मान है।

RSI प्रारूप सभी का उपभोग करने के लिए आवश्यकतानुसार पुन: उपयोग किया जाता है तर्क। अगर प्रारूप
और चाहिए तर्क आपूर्ति की तुलना में, अतिरिक्त प्रारूप विनिर्देश व्यवहार करते हैं
जैसे कि एक शून्य मान या शून्य स्ट्रिंग, जैसा उपयुक्त हो, आपूर्ति की गई थी। वापसी
सफलता पर मूल्य शून्य है, विफलता पर गैर-शून्य है।

pushd [-n] [+n] [-n]
pushd [-n] [दीर]
निर्देशिका स्टैक के शीर्ष पर एक निर्देशिका जोड़ता है, या स्टैक को घुमाकर बनाता है
स्टैक का नया शीर्ष वर्तमान कार्यशील निर्देशिका। बिना किसी तर्क के,
शीर्ष दो निर्देशिकाओं का आदान-प्रदान करता है और 0 लौटाता है, जब तक कि निर्देशिका स्टैक न हो
खाली। यदि तर्क दिए गए हैं, तो उनके निम्नलिखित अर्थ हैं:
-n निर्देशिकाओं को जोड़ते समय निर्देशिका के सामान्य परिवर्तन को दबा देता है
स्टैक, ताकि केवल स्टैक में हेरफेर किया जा सके।
+n स्टैक को घुमाता है ताकि nवें निर्देशिका (के बाईं ओर से गिनती)।
द्वारा दिखाई गई सूची dirs, शून्य से शुरू) शीर्ष पर है।
-n स्टैक को घुमाता है ताकि nवें निर्देशिका (दाईं ओर से गिनती करते हुए
द्वारा दिखाई गई सूची dirs, शून्य से शुरू) शीर्ष पर है।
दीर जोड़ता है दीर शीर्ष पर निर्देशिका स्टैक में, इसे नया वर्तमान बना दिया गया है
कार्यशील निर्देशिका मानो इसे तर्क के रूप में प्रदान की गई हो cd
बिल्टिन।

अगर pushd आदेश सफल है, ए dirs भी किया जाता है. यदि पहला फॉर्म
प्रयोग किया जाता है, pushd जब तक सीडी न हो, 0 लौटाता है दीर विफल रहता है. दूसरे रूप के साथ, pushd
जब तक निर्देशिका स्टैक खाली न हो, 0 लौटाता है, एक गैर-मौजूद निर्देशिका स्टैक
तत्व निर्दिष्ट है, या निर्देशिका निर्दिष्ट नए वर्तमान में बदल जाती है
निर्देशिका विफल रहती है.

लोक निर्माण विभाग [-एलपी]
वर्तमान कार्यशील निर्देशिका का पूर्ण पथनाम प्रिंट करें। पथनाम मुद्रित
यदि इसमें कोई प्रतीकात्मक लिंक नहीं है -P विकल्प प्रदान किया गया है या -o भौतिक विकल्प
को सेट बिल्टइन कमांड सक्षम है. यदि -L विकल्प का उपयोग किया जाता है, पथनाम
मुद्रित में प्रतीकात्मक लिंक हो सकते हैं। जब तक कोई त्रुटि न हो, वापसी की स्थिति 0 है
वर्तमान निर्देशिका का नाम पढ़ते समय या एक अमान्य विकल्प प्रदान किया जाता है।

पढ़ना [-इर्स] [-a एक नाम] [-d परिसीमक] [-i टेक्स्ट] [-n nchars] [-N nchars] [-p शीघ्र] [-t
मध्यांतर] [-u fd] [नाम ...]
एक पंक्ति मानक इनपुट से, या फ़ाइल डिस्क्रिप्टर से पढ़ी जाती है fd आपूर्ति
के तर्क के रूप में -u विकल्प, और पहला शब्द पहले को सौंपा गया है नाम,
दूसरे शब्द से दूसरे शब्द तक नाम, और इसी तरह, बचे हुए शब्दों और उनके साथ
हस्तक्षेप करने वाले विभाजक अंतिम को सौंपे गए नाम. शब्द कम हों तो पढ़ें
नामों की तुलना में इनपुट स्ट्रीम से, शेष नामों को खाली मान दिए गए हैं।
में वर्ण आईएफएस समान नियमों का उपयोग करके पंक्ति को शब्दों में विभाजित करने के लिए उपयोग किया जाता है
विस्तार के लिए शेल का उपयोग किया जाता है (नीचे ऊपर वर्णित है)। शब्द विभाजन). बैकस्लैश
चरित्र (\) का उपयोग अगले पढ़े गए चरित्र के लिए किसी विशेष अर्थ को हटाने के लिए किया जा सकता है
और लाइन निरंतरता के लिए. यदि विकल्प दिए गए हैं, तो उनके निम्नलिखित अर्थ होंगे:
-a एक नाम
शब्दों को सरणी चर के अनुक्रमिक सूचकांकों को सौंपा गया है एक नाम,
0 से शुरू। एक नाम कोई भी नया मान निर्दिष्ट करने से पहले अनसेट किया जाता है। अन्य
नाम तर्कों को नजरअंदाज कर दिया जाता है.
-d परिसीमक
का पहला किरदार परिसीमक बल्कि, इनपुट लाइन को समाप्त करने के लिए उपयोग किया जाता है
न्यूलाइन की तुलना में.
-e यदि मानक इनपुट किसी टर्मिनल से आ रहा है, ReadLine (देखें पढ़ने के लिए लाइन
ऊपर) का उपयोग लाइन प्राप्त करने के लिए किया जाता है। रीडलाइन वर्तमान (या डिफ़ॉल्ट) का उपयोग करता है
यदि लाइन संपादन पहले से सक्रिय नहीं था) संपादन सेटिंग्स।
-i टेक्स्ट
If ReadLine पंक्ति को पढ़ने के लिए उपयोग किया जा रहा है, टेक्स्ट संपादन में रखा गया है
संपादन शुरू होने से पहले बफ़र करें।
-n nchars
पढ़ना पढ़कर लौट आता है nchars पात्रों की प्रतीक्षा करने के बजाय
इनपुट की पूरी लाइन, लेकिन इससे कम होने पर एक सीमांकक का सम्मान करें nchars
वर्ण सीमांकक से पहले पढ़े जाते हैं।
-N nchars
पढ़ना हूबहू पढ़कर लौट आता है nchars किरदारों का इंतज़ार करने के बजाय
इनपुट की एक पूरी लाइन, जब तक कि ईओएफ का सामना न हो या पढ़ना समय पूरा हुआ।
इनपुट में आने वाले डिलीमिटर वर्णों का विशेष रूप से इलाज नहीं किया जाता है
कारण नहीं है पढ़ना तक लौटने के लिए nchars अक्षर पढ़े जाते हैं.
-p शीघ्र
डिस्प्ले शीघ्र मानक त्रुटि पर, पिछली नई पंक्ति के बिना, पहले
किसी भी इनपुट को पढ़ने का प्रयास किया जा रहा है। संकेत केवल तभी प्रदर्शित होता है जब इनपुट होता है
एक टर्मिनल से आ रहा है.
-r बैकस्लैश एक भागने वाले चरित्र के रूप में कार्य नहीं करता है। बैकस्लैश माना जाता है
पंक्ति का हिस्सा बनने के लिए. विशेष रूप से, बैकस्लैश-न्यूलाइन जोड़ी नहीं हो सकती है
एक पंक्ति निरंतरता के रूप में उपयोग किया जाता है।
-s शांत अवस्था। यदि इनपुट किसी टर्मिनल से आ रहा है, तो वर्ण प्रतिध्वनित नहीं होते हैं।
-t मध्यांतर
कारण पढ़ना यदि इनपुट की पूरी लाइन (या ए) टाइम आउट करने और विफलता लौटाने के लिए
वर्णों की निर्दिष्ट संख्या) के भीतर नहीं पढ़ा जाता है मध्यांतर सेकंड. मध्यांतर
दशमलव के बाद भिन्नात्मक भाग वाली एक दशमलव संख्या हो सकती है
बिंदु। यह विकल्प तभी प्रभावी है जब पढ़ना से इनपुट पढ़ रहा है
टर्मिनल, पाइप, या अन्य विशेष फ़ाइल; से पढ़ते समय इसका कोई प्रभाव नहीं पड़ता
नियमित फ़ाइलें. अगर पढ़ना समय पूरा हुआ, पढ़ना पढ़े गए किसी भी आंशिक इनपुट को सहेजता है
निर्दिष्ट चर नाम. अगर मध्यांतर 0 है, पढ़ना तुरंत लौट आता है,
किसी भी डेटा को पढ़ने की कोशिश किए बिना। यदि इनपुट उपलब्ध है तो निकास स्थिति 0 है
निर्दिष्ट फ़ाइल डिस्क्रिप्टर पर, अन्यथा शून्य नहीं। निकास स्थिति है
यदि टाइमआउट पार हो गया है तो 128 से अधिक।
-u fd फ़ाइल डिस्क्रिप्टर से इनपुट पढ़ें fd.

यदि नही नामों आपूर्ति की जाती है, पढ़ी गई पंक्ति वेरिएबल को सौंपी जाती है जवाब दें
रिटर्न कोड शून्य है, जब तक कि फ़ाइल का अंत न मिल जाए, पढ़ना टाइम आउट (जिसमें
यदि रिटर्न कोड 128 से अधिक है), एक परिवर्तनीय असाइनमेंट त्रुटि (जैसे
रीडओनली वेरिएबल को असाइन करना) होता है, या एक अमान्य फ़ाइल डिस्क्रिप्टर प्रदान किया जाता है
तर्क के रूप में -u.

सिफ़ पढ़िये [-एएएफ] [-p] [नाम[=शब्द] ...]
दिया नामों केवल पढ़ने के लिए चिह्नित हैं; इनके मूल्य नामों बदला नहीं जा सकता
बाद के असाइनमेंट द्वारा. यदि -f विकल्प प्रदान किया गया है, कार्य
के लिए इसी नामों इतने चिन्हित हैं. -a विकल्प वेरिएबल्स को प्रतिबंधित करता है
अनुक्रमित सरणियाँ; -A विकल्प वेरिएबल्स को सहयोगी सरणियों तक सीमित करता है। अगर
दोनों विकल्प उपलब्ध हैं, -A प्रधानता मिलती है। अगर कोई नहीं नाम तर्क दिए गए हैं, या
अगर -p विकल्प प्रदान किया जाता है, सभी पढ़ने योग्य नामों की एक सूची मुद्रित की जाती है। अन्य
आउटपुट को केवल पढ़ने के लिए सेट के सबसेट तक सीमित करने के लिए विकल्पों का उपयोग किया जा सकता है
names. -p विकल्प के कारण आउटपुट ऐसे प्रारूप में प्रदर्शित होता है जिसका पुन: उपयोग किया जा सकता है
इनपुट के रूप में. यदि किसी वेरिएबल नाम के बाद = आता हैशब्द, चर का मान है
करने के लिए सेट शब्द. जब तक कोई अमान्य विकल्प सामने न आए, रिटर्न स्थिति 0 है
का नामों वैध शेल वैरिएबल नाम नहीं है, या -f के साथ आपूर्ति की जाती है नाम कि
कोई फ़ंक्शन नहीं है.

वापसी [n]
किसी फ़ंक्शन को निष्पादित करना बंद करने और निर्दिष्ट मान वापस करने का कारण बनता है n इसके लिए
फोन करने वाला अगर n छोड़ दिया गया है, वापसी की स्थिति निष्पादित अंतिम कमांड की है
कार्य निकाय. अगर वापसी किसी फ़ंक्शन के बाहर उपयोग किया जाता है, लेकिन a के निष्पादन के दौरान
द्वारा स्क्रिप्ट . (स्रोत) कमांड, यह शेल को निष्पादित करना बंद कर देता है
स्क्रिप्ट और वापसी भी n या भीतर निष्पादित अंतिम कमांड की निकास स्थिति
स्क्रिप्ट को स्क्रिप्ट की निकास स्थिति के रूप में। अगर n आपूर्ति की जाती है, वापसी मूल्य है
यह सबसे कम महत्वपूर्ण 8 बिट है। यदि वापसी की स्थिति शून्य नहीं है वापसी भेज दिया गया है
एक गैर-संख्यात्मक तर्क, या किसी फ़ंक्शन के बाहर उपयोग किया जाता है, न कि किसी के निष्पादन के दौरान
स्क्रिप्ट द्वारा . or स्रोत. से जुड़ा कोई भी आदेश वापसी ट्रैप निष्पादित किया जाता है
फ़ंक्शन या स्क्रिप्ट के बाद निष्पादन फिर से शुरू होने से पहले।

सेट [--abefhkmnptuvxबीसीईएचपीटी] [-o विकल्प-नाम] [arg ...]
सेट [+abefhkmnptuvxBCEHPT] [+o विकल्प-नाम] [arg ...]
विकल्पों के बिना, प्रत्येक शेल वेरिएबल का नाम और मान प्रदर्शित होते हैं
प्रारूप जिसे वर्तमान में सेट की गई सेटिंग या रीसेट करने के लिए इनपुट के रूप में पुन: उपयोग किया जा सकता है
चर। केवल पढ़ने योग्य वेरिएबल को रीसेट नहीं किया जा सकता. में POSIX मोड, केवल शेल
चर सूचीबद्ध हैं. आउटपुट को वर्तमान स्थान के अनुसार क्रमबद्ध किया गया है। कब
विकल्प निर्दिष्ट हैं, वे शेल विशेषताएँ सेट या अनसेट करते हैं। कोई भी तर्क शेष है
विकल्प प्रसंस्करण के बाद स्थितीय मापदंडों के लिए मान के रूप में माना जाता है और हैं
सौंपा गया, क्रम में, को $1, $2, ... $n. विकल्प, यदि निर्दिष्ट हैं, तो निम्नलिखित हैं
अर्थ:
-a संशोधित या निर्मित किए गए वेरिएबल और फ़ंक्शंस को स्वचालित रूप से चिह्नित करें
बाद के आदेशों के वातावरण में निर्यात के लिए।
-b इसके बजाय, समाप्त की गई पृष्ठभूमि नौकरियों की स्थिति की तुरंत रिपोर्ट करें
अगले प्राथमिक संकेत से पहले. यह तभी प्रभावी है जब कार्य पर नियंत्रण हो
सक्षम होना चाहिए।
-e तुरंत बाहर निकलें यदि ए पाइपलाइन (जिसमें एक भी शामिल हो सकता है सरल
आदेश), एक सूची, या एक यौगिक आदेश (देखें शेल व्याकरण ऊपर), बाहर निकलता है
गैर-शून्य स्थिति के साथ. यदि आदेश विफल हो जाता है तो शेल बाहर नहीं निकलता है
a के तुरंत बाद कमांड सूची का हिस्सा है जब or जब तक कीवर्ड,
निम्नलिखित परीक्षण का भाग if or elif आरक्षित शब्द, किसी का हिस्सा
कमांड को ए में निष्पादित किया गया && or || अंतिम के बाद आदेश को छोड़कर सूची
&& or ||, पाइपलाइन में अंतिम को छोड़कर कोई भी कमांड, या यदि कमांड है
रिटर्न वैल्यू को उलटा किया जा रहा है !. यदि ए के अलावा कोई कंपाउंड कमांड है
सबशेल एक गैर-शून्य स्थिति लौटाता है क्योंकि एक कमांड विफल हो गई -e था
नजरअंदाज किए जाने पर, शेल बाहर नहीं निकलता है। एक जाल चालू अं, यदि सेट है, तो निष्पादित किया जाता है
शेल के बाहर निकलने से पहले. यह विकल्प शेल परिवेश पर लागू होता है और
प्रत्येक उपकोश वातावरण अलग से (देखें कमान कार्यान्वयन वातावरण
ऊपर), और सभी आदेशों को निष्पादित करने से पहले उपकोशों को बाहर निकलने का कारण बन सकता है
उपकोश में.

यदि कोई कंपाउंड कमांड या शेल फ़ंक्शन किसी संदर्भ में निष्पादित होता है -e is
अनदेखा किया जा रहा है, कंपाउंड कमांड के भीतर कोई भी कमांड निष्पादित नहीं किया गया है
शरीर के कार्य प्रभावित होंगे -e सेटिंग, भले ही -e सेट है और ए
आदेश विफलता की स्थिति लौटाता है। यदि कोई कंपाउंड कमांड या शेल फ़ंक्शन
सेट -e एक संदर्भ में निष्पादित करते समय जहां -e यदि इसे नजरअंदाज कर दिया जाए, तो वह सेटिंग हो जाएगी
कंपाउंड कमांड या कमांड युक्त होने तक कोई प्रभाव नहीं पड़ता है
फ़ंक्शन कॉल पूरा हो गया।
-f पथनाम विस्तार अक्षम करें.
-h आदेशों का स्थान याद रखें क्योंकि उन्हें निष्पादन के लिए देखा जाता है।
यह डिफ़ॉल्ट रूप से सक्षम है.
-k असाइनमेंट स्टेटमेंट के रूप में सभी तर्क इसमें रखे गए हैं
किसी कमांड के लिए वातावरण, न कि केवल वे जो कमांड नाम से पहले आते हैं।
-m मॉनिटर मोड. कार्य नियंत्रण सक्षम है. यह विकल्प डिफ़ॉल्ट रूप से चालू है
सिस्टम पर इंटरैक्टिव शेल जो इसका समर्थन करते हैं (देखें नौकरी नियंत्रण ऊपर)। सभी
प्रक्रियाएँ एक अलग प्रक्रिया समूह में चलती हैं। जब एक पृष्ठभूमि नौकरी
पूरा होने पर, शेल अपनी निकास स्थिति वाली एक पंक्ति प्रिंट करता है।
-n आदेश पढ़ें लेकिन उन पर अमल न करें. इसका उपयोग किसी शेल की जांच के लिए किया जा सकता है
सिंटैक्स त्रुटियों के लिए स्क्रिप्ट. इंटरएक्टिव शेल्स द्वारा इसे नजरअंदाज कर दिया जाता है।
-o विकल्प-नाम
RSI विकल्प-नाम निम्नलिखित में से एक हो सकता है:
ऑलएक्सपोर्ट
के समान -a.
ब्रेसएक्सपैंड
के समान -B.
Emacs Emacs-शैली कमांड लाइन संपादन इंटरफ़ेस का उपयोग करें। यह सक्षम है
डिफ़ॉल्ट रूप से जब शेल इंटरैक्टिव होता है, जब तक कि शेल इंटरैक्टिव न हो
के साथ शुरू किया --संपादन नहीं विकल्प। इसका असर संपादन पर भी पड़ता है
इंटरफ़ेस के लिए उपयोग किया जाता है पढ़ना -e.
इरेक्सिट के समान -e.
त्रुटि
के समान -E.
funtrace
के समान -T.
हैशैल के समान -h.
Histexpand
के समान -H.
इतिहास जैसा कि ऊपर बताया गया है, कमांड इतिहास सक्षम करें इतिहास। इस
इंटरैक्टिव शेल्स में विकल्प डिफ़ॉल्ट रूप से चालू होता है।
अनदेखा करना
प्रभाव ऐसा है मानो शेल कमांड ``IGNOREEOF=10'' रहा हो
निष्पादित (देखें) खोल चर ऊपर)।
कीवर्ड के समान -k.
मॉनिटर के समान -m.
नोक्लोबर
के समान -C.
noexec के समान -n.
नोग्लोब के समान -f.
नाल वर्तमान में नजरअंदाज किया गया।
सूचित करें के समान -b.
संज्ञा के समान -u.
वनसेमीडी के समान -t.
भौतिक
के समान -P.
पाइप फेल
यदि सेट किया गया है, तो पाइपलाइन का रिटर्न मान अंतिम का मान है
(सबसे दाईं ओर) गैर-शून्य स्थिति के साथ बाहर निकलने का आदेश, या यदि सभी हो तो शून्य
पाइपलाइन में कमांड सफलतापूर्वक बाहर निकलें। यह विकल्प है
डिफ़ॉल्ट रूप से अक्षम।
POSIX का व्यवहार बदलें खूब जोर से पीटना जहां डिफ़ॉल्ट ऑपरेशन भिन्न है
POSIX मानक से मानक से मेल खाने के लिए (POSIX मोड)। देख
देख ALSO एक दस्तावेज़ के संदर्भ के लिए नीचे दिया गया है जो बताता है कि कैसे पॉज़िक्स
मोड बैश के व्यवहार को प्रभावित करता है।
विशेषाधिकृत
के समान -p.
वाचाल के समान -v.
vi vi-शैली कमांड लाइन संपादन इंटरफ़ेस का उपयोग करें। इसका भी असर पड़ता है
संपादन इंटरफ़ेस के लिए उपयोग किया जाता है पढ़ना -e.
एक्सट्रेस के समान -x.
If -o नं. के साथ आपूर्ति की जाती है विकल्प-नाम, मौजूदा विकल्पों के मूल्य
मुद्रित हैं. अगर +o नं. के साथ आपूर्ति की जाती है विकल्प-नाम, की एक श्रृंखला सेट
वर्तमान विकल्प सेटिंग्स को फिर से बनाने के लिए आदेश प्रदर्शित होते हैं
मानक आउटपुट।
-p पर बारी विशेषाधिकृत तरीका। इस मोड में, $ईएनवी और $BASH_ENV फाइलें हैं
संसाधित नहीं, शेल फ़ंक्शंस पर्यावरण से विरासत में नहीं मिले हैं, और
la शेलॉप्स, बैशोप्ट्स, CDPATH, तथा ग्लोबिग्नोर चर, यदि वे प्रकट होते हैं
पर्यावरण में उपेक्षा की जाती है। यदि शेल की शुरुआत इससे होती है
प्रभावी उपयोगकर्ता (समूह) आईडी वास्तविक उपयोगकर्ता (समूह) आईडी के बराबर नहीं है, और -p
विकल्प प्रदान नहीं किया गया है, ये कार्रवाई की गई है और प्रभावी उपयोगकर्ता आईडी
वास्तविक उपयोगकर्ता आईडी पर सेट है। यदि -p विकल्प स्टार्टअप पर प्रदान किया जाता है
प्रभावी उपयोगकर्ता आईडी रीसेट नहीं है. इस विकल्प को बंद करने से इसका कारण बनता है
प्रभावी उपयोगकर्ता और समूह आईडी को वास्तविक उपयोगकर्ता और समूह आईडी पर सेट किया जाएगा।
-t एक आदेश को पढ़ने और निष्पादित करने के बाद बाहर निकलें।
-u विशेष पैरामीटर "@" के अलावा अन्य अनसेट चर और पैरामीटर का इलाज करें
और पैरामीटर विस्तार करते समय एक त्रुटि के रूप में "*"। यदि विस्तार है
किसी अनसेट वेरिएबल या पैरामीटर पर प्रयास करने पर, शेल एक त्रुटि प्रिंट करता है
संदेश, और, यदि इंटरैक्टिव नहीं है, तो गैर-शून्य स्थिति के साथ बाहर निकल जाता है।
-v जैसे ही वे पढ़े जाते हैं, शेल इनपुट लाइनों को प्रिंट करें।
-x प्रत्येक का विस्तार करने के बाद सरल आदेश, एसटी आदेश, मामला आदेश, चयन
आदेश, या अंकगणित एसटी कमांड, का विस्तारित मान प्रदर्शित करें PS4,
इसके बाद कमांड और उसके विस्तारित तर्क या संबंधित शब्द सूची आती है।
-B शेल ब्रेस विस्तार करता है (देखें)। ब्रेस विस्तार ऊपर)। ये चालू है
डिफ़ॉल्ट रूप से
-C अगर सेट हो, खूब जोर से पीटना किसी मौजूदा फ़ाइल को इसके साथ अधिलेखित नहीं करता है >, >&, तथा <>
पुनर्निर्देशन ऑपरेटर। आउटपुट फ़ाइलें बनाते समय इसे ओवरराइड किया जा सकता है
पुनर्निर्देशन ऑपरेटर का उपयोग करके >| के बजाय >.
-E यदि सेट किया गया है, तो कोई भी जाल चालू है अं शेल फ़ंक्शंस, कमांड द्वारा विरासत में मिला है
प्रतिस्थापन, और सबशेल वातावरण में निष्पादित आदेश। अं
ऐसे मामलों में जाल आमतौर पर विरासत में नहीं मिलता है।
-H सक्षम ! शैली इतिहास प्रतिस्थापन. यह विकल्प डिफ़ॉल्ट रूप से चालू होता है
शेल इंटरैक्टिव है.
-P यदि सेट किया गया है, तो कमांड निष्पादित करते समय शेल प्रतीकात्मक लिंक का समाधान नहीं करता है
जैसे cd जो वर्तमान कार्यशील निर्देशिका को बदल देता है। यह भौतिक का उपयोग करता है
इसके बजाय निर्देशिका संरचना। डिफ़ॉल्ट रूप से, खूब जोर से पीटना की तार्किक श्रृंखला का अनुसरण करता है
आदेश निष्पादित करते समय निर्देशिकाएँ जो वर्तमान निर्देशिका को बदल देती हैं।
-T यदि सेट किया गया है, तो कोई भी जाल चालू है डीबग और वापसी शेल फ़ंक्शंस द्वारा विरासत में मिले हैं,
कमांड प्रतिस्थापन, और सबशेल वातावरण में निष्पादित कमांड।
RSI डीबग और वापसी ऐसे मामलों में जाल आमतौर पर विरासत में नहीं मिलते हैं।
-- यदि कोई तर्क इस विकल्प का पालन नहीं करता है, तो स्थितीय पैरामीटर हैं
परेशान अन्यथा, स्थितीय पैरामीटर पर सेट हैं argएस, भले ही
उनमें से कुछ a से शुरू होते हैं -.
- विकल्पों के अंत का संकेत दें, शेष सभी का कारण बनें argको सौंपा जाना है
स्थितीय पैरामीटर. -x और -v विकल्प बंद हैं. अगर वहाँ
नहीं args, स्थितीय पैरामीटर अपरिवर्तित रहते हैं।

जब तक अन्यथा उल्लेख न किया गया हो, विकल्प डिफ़ॉल्ट रूप से बंद हैं। - के बजाय + का उपयोग करना
इन विकल्पों को बंद करने का कारण बनता है। विकल्पों को इस प्रकार भी निर्दिष्ट किया जा सकता है
शेल के आह्वान के लिए तर्क। विकल्पों का वर्तमान सेट मिल सकता है
in $-. जब तक कोई अमान्य विकल्प सामने न आए, वापसी की स्थिति हमेशा सत्य होती है।

पाली [n]
से स्थितीय पैरामीटर n+1 ... का नाम बदल दिया गया है $1 .... पैरामीटर्स
संख्याओं द्वारा दर्शाया गया है $# नीचे करने के लिए $#-n+1 अनसेट हैं. n एक गैर-नकारात्मक होना चाहिए
से कम या बराबर संख्या $#. अगर n 0 है, कोई पैरामीटर नहीं बदला गया है। अगर n is
नहीं दिया गया है, तो यह माना जाता है 1. यदि n से अधिक है $#स्थिति
पैरामीटर नहीं बदले गए हैं. यदि वापसी की स्थिति शून्य से अधिक है n से बड़ा है
से $# या शून्य से कम; अन्यथा 0.

दुकान [-pqsu] [-o] [ऑप्टनाम ...]
वैकल्पिक शेल व्यवहार को नियंत्रित करने वाली सेटिंग्स के मानों को टॉगल करें। सेटिंग्स
या तो नीचे सूचीबद्ध हो सकते हैं, या, यदि -o विकल्प का उपयोग किया जाता है, जो उपलब्ध हैं
साथ -o विकल्प सेट अंतर्निहित आदेश. बिना किसी विकल्प के, या के साथ -p
विकल्प, सभी निपटान योग्य विकल्पों की एक सूची प्रदर्शित होती है, जिसमें यह संकेत होता है कि क्या
या प्रत्येक सेट नहीं है. -p विकल्प के कारण आउटपुट एक ऐसे रूप में प्रदर्शित होता है जो हो सकता है
इनपुट के रूप में पुन: उपयोग किया जाए। अन्य विकल्पों के निम्नलिखित अर्थ हैं:
-s प्रत्येक को सक्षम (सेट) करें ऑप्टनाम.
-u प्रत्येक को अक्षम (अनसेट) करें ऑप्टनाम.
-q सामान्य आउटपुट (शांत मोड) को दबा देता है; वापसी की स्थिति इंगित करती है कि क्या
la ऑप्टनाम सेट या अनसेट है. यदि एकाधिक ऑप्टनाम के साथ तर्क दिये गये हैं
-q, यदि सभी हों तो वापसी की स्थिति शून्य है ऑप्टनाम सक्षम हैं; शून्येतर
अन्यथा।
-o के मूल्यों को प्रतिबंधित करता है ऑप्टनाम उन लोगों के लिए परिभाषित किया गया है -o विकल्प
सेट बिल्टिन।

या तो -s or -u संख्या के साथ प्रयोग किया जाता है ऑप्टनाम तर्क, दुकान उन्हीं को दिखाता है
विकल्प जो क्रमशः सेट या अनसेट हैं। जब तक अन्यथा उल्लेख न किया गया हो, दुकान
विकल्प डिफ़ॉल्ट रूप से अक्षम (अनसेट) होते हैं।

विकल्पों को सूचीबद्ध करते समय वापसी की स्थिति यदि सभी हो तो शून्य होती है ऑप्टनाम सक्षम हैं, गैर-
अन्यथा शून्य. विकल्प सेट या अनसेट करते समय, रिटर्न स्थिति शून्य होती है
जब तक कि एक ऑप्टनाम वैध शेल विकल्प नहीं है.

की सूची दुकान विकल्प है:

autocd यदि सेट किया गया है, तो एक कमांड नाम जो कि एक निर्देशिका का नाम है, उसे इस तरह निष्पादित किया जाता है
के लिए तर्क थे cd आज्ञा। इस विकल्प का उपयोग केवल द्वारा किया जाता है
इंटरैक्टिव गोले.
cdable_vars
यदि सेट किया गया है, तो एक तर्क cd बिल्टइन कमांड जो एक डायरेक्टरी नहीं है
यह एक वेरिएबल का नाम माना जाता है जिसका मान बदलने के लिए निर्देशिका है
सेवा मेरे।
cdspell यदि सेट किया जाता है, तो किसी निर्देशिका घटक की वर्तनी में छोटी त्रुटियाँ होती हैं cd
आदेश ठीक कर दिया जाएगा. जाँच की गई त्रुटियों को स्थानांतरित कर दिया गया है
पात्र, एक लुप्त पात्र, और एक पात्र बहुत अधिक। यदि एक
सुधार पाया गया है, सही फ़ाइल नाम मुद्रित किया गया है, और कमांड
आगे बढ़ता है. यह विकल्प केवल इंटरैक्टिव शेल्स द्वारा उपयोग किया जाता है।
चेकहैश
अगर सेट हो, खूब जोर से पीटना जाँचता है कि हैश तालिका में पाया गया कमांड पहले से मौजूद है
इसे क्रियान्वित करने का प्रयास किया जा रहा है। यदि हैशेड कमांड अब मौजूद नहीं है, तो एक सामान्य पथ
खोज की जाती है.
नौकरियाँ जाँचें
अगर सेट हो, खूब जोर से पीटना पहले से रुके हुए और चल रहे किसी भी कार्य की स्थिति सूचीबद्ध करता है
एक इंटरैक्टिव शेल से बाहर निकलना। यदि कोई कार्य चल रहा है, तो इसका कारण बनता है
जब तक बिना किसी हस्तक्षेप के दूसरे निकास का प्रयास नहीं किया जाता तब तक निकास को स्थगित रखा जाएगा
आदेश (देखें नौकरी नियंत्रण ऊपर)। यदि कोई हो तो शेल हमेशा बाहर निकलने को स्थगित कर देता है
नौकरियाँ बंद हैं.
checkwinsize
अगर सेट हो, खूब जोर से पीटना प्रत्येक आदेश के बाद विंडो आकार की जाँच करता है और, यदि आवश्यक हो,
के मूल्यों को अद्यतन करता है लाइनें और कॉलम.
सी.एम.डी.एच.आई.एस.टी अगर सेट हो, खूब जोर से पीटना मल्टीपल-लाइन कमांड की सभी पंक्तियों को सहेजने का प्रयास करता है
वही इतिहास प्रविष्टि. यह मल्टी-लाइन कमांड को आसानी से पुनः संपादित करने की अनुमति देता है।
compat31
अगर सेट हो, खूब जोर से पीटना के संबंध में अपना व्यवहार संस्करण 3.1 के अनुरूप बदलता है
के तर्क उद्धृत किये [[ सशर्त आदेश =~ ऑपरेटर और स्थान-
का उपयोग करते समय विशिष्ट स्ट्रिंग तुलना [[ सशर्त आदेश < और >
संचालक। बैश-4.1 से पहले के बैश संस्करण ASCII संयोजन का उपयोग करते हैं और
स्ट्रैम्प(3); बैश-4.1 और बाद में वर्तमान लोकेल के संयोजन अनुक्रम का उपयोग करें
और स्ट्रोकोल(3).
compat32
अगर सेट हो, खूब जोर से पीटना के संबंध में अपना व्यवहार संस्करण 3.2 के अनुरूप बदलता है
का उपयोग करते समय स्थानीय-विशिष्ट स्ट्रिंग तुलना [[ सशर्त आदेश <
और > ऑपरेटर्स (पिछला आइटम देखें)।
compat40
अगर सेट हो, खूब जोर से पीटना के संबंध में अपना व्यवहार संस्करण 4.0 के अनुरूप बदलता है
का उपयोग करते समय स्थानीय-विशिष्ट स्ट्रिंग तुलना [[ सशर्त आदेश <
और > ऑपरेटर्स (विवरण देखें) compat31) और का प्रभाव
एक आदेश सूची को बाधित करना। बैश संस्करण 4.0 और बाद में बाधित करें
सूचीबद्ध करें जैसे कि शेल को व्यवधान प्राप्त हुआ हो; पिछले संस्करण जारी हैं
सूची में अगले आदेश के साथ।
compat41
अगर सेट हो, खूब जोर से पीटना, जब इसमें POSIX मोड, एकल उद्धरण को दोहरे उद्धरण में मानता है
एक विशेष वर्ण के रूप में पैरामीटर विस्तार। एकल उद्धरण मेल खाने चाहिए
(एक सम संख्या) और एकल उद्धरण चिह्नों के बीच के अक्षर हैं
उद्धृत माना जाता है। यह संस्करण 4.1 के माध्यम से पॉज़िक्स मोड का व्यवहार है।
डिफ़ॉल्ट बैश व्यवहार पिछले संस्करणों की तरह ही रहता है।
compat42
अगर सेट हो, खूब जोर से पीटना पैटर्न में प्रतिस्थापन स्ट्रिंग को संसाधित नहीं करता है
उद्धरण हटाने का उपयोग करके प्रतिस्थापन शब्द विस्तार।
पूर्ण_पूर्णउद्धरण
अगर सेट हो, खूब जोर से पीटना फ़ाइल नाम और निर्देशिका में सभी शेल मेटाअक्षरों को उद्धृत करता है
पूर्णता निष्पादित करते समय नाम. यदि सेट नहीं है, खूब जोर से पीटना मेटाकैरेक्टर्स को हटा देता है
जैसे कि उद्धृत किए जाने वाले वर्णों के सेट से डॉलर चिह्न
जब ये मेटाएक्टर शेल वेरिएबल में दिखाई देते हैं तो पूर्ण फ़ाइल नाम
शब्दों में सन्दर्भ पूरा किया जाना है। इसका मतलब है कि डॉलर साइन इन करता है
निर्देशिकाओं में विस्तारित होने वाले परिवर्तनीय नामों को उद्धृत नहीं किया जाएगा; हालाँकि, कोई भी
फ़ाइल नामों में दिखने वाले डॉलर चिह्नों को भी उद्धृत नहीं किया जाएगा। यह है
केवल तभी सक्रिय होता है जब बैश पूर्ण फ़ाइल नामों को उद्धृत करने के लिए बैकस्लैश का उपयोग कर रहा हो।
यह वेरिएबल डिफ़ॉल्ट रूप से सेट किया गया है, जो कि डिफ़ॉल्ट बैश व्यवहार है
संस्करण से 4.2 तक।
direxpand
अगर सेट हो, खूब जोर से पीटना शब्द विस्तार के परिणामों के साथ निर्देशिका नामों को प्रतिस्थापित करता है
फ़ाइल नाम पूरा करते समय। इससे इसकी सामग्री बदल जाती है
रीडलाइन संपादन बफ़र. यदि सेट नहीं है, खूब जोर से पीटना जो संरक्षित करने का प्रयास करता है
उपयोगकर्ता ने टाइप किया.
dirspell
अगर सेट हो, खूब जोर से पीटना शब्द के दौरान निर्देशिका नामों पर वर्तनी सुधार का प्रयास
पूर्णता यदि प्रारंभ में प्रदान की गई निर्देशिका नाम मौजूद नहीं है।
डॉटग्लोब अगर सेट हो, खूब जोर से पीटना `.' से शुरू होने वाले फ़ाइल नाम शामिल हैं के परिणाम में
पथनाम विस्तार.
निष्फल
यदि सेट किया गया है, तो एक गैर-इंटरैक्टिव शेल बाहर नहीं निकलेगा यदि वह फ़ाइल को निष्पादित नहीं कर सकता है
के तर्क के रूप में निर्दिष्ट किया गया है कार्यकारी अंतर्निहित आदेश. एक इंटरैक्टिव शेल
यदि बाहर नहीं निकलता है कार्यकारी विफल रहता है।
विस्तार_उपनाम
यदि सेट किया गया है, तो उपनामों का विस्तार ऊपर बताए अनुसार किया जाता है उपनाम. इस विकल्प
इंटरैक्टिव शेल के लिए डिफ़ॉल्ट रूप से सक्षम है।
extdebug
यदि सेट किया गया है, तो डिबगर्स द्वारा उपयोग के लिए इच्छित व्यवहार सक्षम है:
1. RSI -F विकल्प घोषित बिल्टिन स्रोत फ़ाइल नाम प्रदर्शित करता है
और प्रत्येक फ़ंक्शन नाम के अनुरूप लाइन नंबर एक के रूप में दिया गया है
तर्क।
2. यदि कमांड द्वारा चलाया जाता है डीबग ट्रैप एक गैर-शून्य मान लौटाता है
अगला आदेश छोड़ दिया गया है और निष्पादित नहीं किया गया है।
3. यदि कमांड द्वारा चलाया जाता है डीबग ट्रैप 2 का मान लौटाता है, और
शेल एक सबरूटीन (एक शेल फ़ंक्शन या शेल) में निष्पादित हो रहा है
स्क्रिप्ट द्वारा निष्पादित . or स्रोत बिल्टिन्स), के लिए एक कॉल वापसी is
नकली.
4. BASH_ARGC और BASH_ARGV जैसा कि उनके में वर्णित है अद्यतन किया गया है
उपरोक्त विवरण.
5. फ़ंक्शन ट्रेसिंग सक्षम है: कमांड प्रतिस्थापन, शेल फ़ंक्शन,
और उपकोशों का आह्वान किया गया ( आदेश ) विरासत में मिला डीबग और वापसी
जाल।
6. त्रुटि अनुरेखण सक्षम है: कमांड प्रतिस्थापन, शेल फ़ंक्शन,
और उपकोशों का आह्वान किया गया ( आदेश ) विरासत में मिला अं जाल।
extglob यदि सेट किया गया है, तो ऊपर वर्णित विस्तारित पैटर्न मिलान सुविधाएँ नीचे दी गई हैं
पथ नाम विस्तार सक्षम हैं
extquote
अगर सेट हो, $'स्ट्रिंग' तथा $"स्ट्रिंग"उद्धरण भीतर किया जाता है ${प्राचल}
दोहरे उद्धरण चिन्हों में संलग्न विस्तार। यह विकल्प डिफॉल्ट द्वारा सक्षम हो जाता है।
फेलग्लोब
यदि सेट किया गया है, तो पैटर्न जो पथनाम विस्तार के दौरान फ़ाइलनाम से मेल खाने में विफल रहते हैं
जिसके परिणामस्वरूप विस्तार त्रुटि हुई.
Force_fignore
यदि सेट किया जाता है, तो प्रत्यय द्वारा निर्दिष्ट किया जाता है फ़िग्नोर शेल वैरिएबल शब्दों का कारण बनता है
शब्द पूर्णता निष्पादित करते समय अनदेखा किया जाना चाहिए, भले ही अनदेखा शब्द हों
एकमात्र संभावित पूर्णता. देखना शेल चर विवरण के लिए ऊपर
of फ़िग्नोर. यह विकल्प डिफॉल्ट द्वारा सक्षम हो जाता है।
globasciiranges
यदि सेट किया गया है, तो पैटर्न मिलान ब्रैकेट अभिव्यक्तियों में रेंज अभिव्यक्ति का उपयोग किया जाता है (देखें)।
पैटर्न मिलान ऊपर) ऐसा व्यवहार करें मानो पारंपरिक C लोकेल में हों
तुलना करना. अर्थात्, वर्तमान स्थान का मिलान क्रम
ध्यान में नहीं रखा जाता है, इसलिए b के बीच मेल नहीं खाएंगे A और B, तथा
अपर-केस और लोअर-केस ASCII वर्ण एक साथ एकत्रित हो जाएंगे।
ग्लोबस्टार
यदि सेट है, पैटर्न ** पथनाम विस्तार संदर्भ में उपयोग किया गया सभी से मेल खाएगा
फ़ाइलें और शून्य या अधिक निर्देशिकाएँ और उपनिर्देशिकाएँ। यदि पैटर्न है
इसके बाद ए /, केवल निर्देशिकाएँ और उपनिर्देशिकाएँ मेल खाती हैं।
gnu_errfmt
यदि सेट किया गया है, तो शेल त्रुटि संदेश मानक GNU त्रुटि संदेश में लिखे जाते हैं
प्रारूप.
htappend
यदि सेट किया गया है, तो इतिहास सूची को मान के अनुसार नामित फ़ाइल में जोड़ दिया जाता है
हिस्टफाइल फ़ाइल को अधिलेखित करने के बजाय, जब शेल बाहर निकलता है तो परिवर्तनशील होता है।
Histreedit
यदि सेट है, और ReadLine उपयोग किया जा रहा है, उपयोगकर्ता को पुनः- का अवसर दिया जाता है
एक असफल इतिहास प्रतिस्थापन संपादित करें।
histverify
यदि सेट है, और ReadLine प्रयोग किया जा रहा है, इतिहास प्रतिस्थापन के परिणाम हैं
तुरंत शेल पार्सर को नहीं भेजा गया। इसके बजाय, परिणामी पंक्ति है
में लोड किया गया ReadLine बफ़र को संपादित करना, आगे संशोधन की अनुमति देना।
मेज़बानपूर्ण
यदि सेट है, और ReadLine उपयोग किया जा रहा है, खूब जोर से पीटना होस्टनाम निष्पादित करने का प्रयास करेगा
पूर्णता जब एक शब्द युक्त एक @ पूरा किया जा रहा है (देखें) पूर्ण कर रहा है
के अंतर्गत पढ़ने के लिए लाइन ऊपर)। यह डिफ़ॉल्ट रूप से सक्षम है.
huponexit
अगर सेट हो, खूब जोर से पीटना भेज दुगा उच्छ्वास करो सभी नौकरियों के लिए जब एक इंटरैक्टिव लॉगिन शेल
बाहर निकलता है।
इंटरैक्टिव_टिप्पणियाँ
यदि सेट है, तो इससे शुरू होने वाले शब्द को अनुमति दें # उस शब्द और शेष सभी का कारण बनने के लिए
इंटरैक्टिव शेल में उस पंक्ति के वर्णों को अनदेखा किया जाना चाहिए (देखें)। रनिंग टाइम:
ऊपर)। यह विकल्प डिफॉल्ट द्वारा सक्षम हो जाता है।
अंतिमपाइप
यदि सेट है, और कार्य नियंत्रण सक्रिय नहीं है, तो शेल अंतिम कमांड चलाता है
पाइपलाइन वर्तमान शेल वातावरण में पृष्ठभूमि में निष्पादित नहीं है।
लिथिस्ट यदि सेट किया गया है, और सी.एम.डी.एच.आई.एस.टी विकल्प सक्षम है, मल्टी-लाइन कमांड सहेजे गए हैं
अर्धविराम विभाजकों का उपयोग करने के बजाय एम्बेडेड नई पंक्तियों के साथ इतिहास
जहां संभव।
लॉगिन_शेल
यदि शेल को लॉगिन शेल के रूप में प्रारंभ किया गया है तो शेल इस विकल्प को सेट करता है (देखें)।
मंगलाचरण ऊपर)। मान बदला नहीं जा सकता.
मेलवार्न
यदि सेट है, और एक फ़ाइल वह खूब जोर से पीटना मेल की जाँच की जा रही है तब से इसे एक्सेस किया गया है
पिछली बार जब इसे चेक किया गया था, तो संदेश ``मेल इन'' था मेलफ़ाइल कर दिया गया है
पढ़ें'' प्रदर्शित होता है।
no_empty_cmd_completion
यदि सेट है, और ReadLine उपयोग किया जा रहा है, खूब जोर से पीटना खोजने का प्रयास नहीं करेगा
पथ संभावित पूर्णताओं के लिए जब पूर्णता का प्रयास खाली स्थान पर किया जाता है
लाइन.
nocaseglob
अगर सेट हो, खूब जोर से पीटना केस-असंवेदनशील तरीके से फ़ाइल नामों से मेल खाता है जब
पथनाम विस्तार करना (देखें) पथ नाम विस्तार ऊपर)।
nocasematch
अगर सेट हो, खूब जोर से पीटना प्रदर्शन करते समय केस-असंवेदनशील तरीके से पैटर्न से मेल खाता है
निष्पादित करते समय मिलान करना मामला or [[ सशर्त आदेश.
nullglob
अगर सेट हो, खूब जोर से पीटना ऐसे पैटर्न की अनुमति देता है जो किसी फ़ाइल से मेल नहीं खाते (देखें)। पथ नाम विस्तार
ऊपर) स्वयं के बजाय एक शून्य स्ट्रिंग में विस्तार करने के लिए।
progcomp
यदि सेट किया गया है, तो प्रोग्रामयोग्य पूर्णता सुविधाएं (देखें निर्देशयोग्य समापन
ऊपर) सक्षम हैं। यह विकल्प डिफॉल्ट द्वारा सक्षम हो जाता है।
शीघ्रवर
यदि सेट किया जाता है, तो प्रॉम्प्ट स्ट्रिंग्स पैरामीटर विस्तार, कमांड प्रतिस्थापन से गुजरती हैं,
अंकगणितीय विस्तार, और वर्णित के अनुसार विस्तारित होने के बाद उद्धरण हटाना
in उत्साह ऊपर। यह विकल्प डिफॉल्ट द्वारा सक्षम हो जाता है।
प्रतिबंधित_शैल
यदि यह प्रतिबंधित मोड में शुरू किया गया है तो शेल इस विकल्प को सेट करता है (देखें)।
वर्जित शेल नीचे)। मान बदला नहीं जा सकता. यह रीसेट नहीं है
जब स्टार्टअप फ़ाइलें निष्पादित होती हैं, तो स्टार्टअप फ़ाइलों को खोजने की अनुमति मिलती है
चाहे कोई शेल प्रतिबंधित हो या नहीं।
शिफ्ट_वर्बोज़
यदि सेट किया गया है, तो पाली शिफ्ट गिनती होने पर बिलिन एक त्रुटि संदेश प्रिंट करता है
स्थितीय मापदंडों की संख्या से अधिक है।
sourcepath
यदि सेट किया गया है, तो स्रोत (.) बिल्टिन के मान का उपयोग करता है पथ निर्देशिका खोजने के लिए
जिसमें तर्क के रूप में दी गई फ़ाइल शामिल है। यह विकल्प इसके द्वारा सक्षम किया गया है
चूक।
xpg_echo
यदि सेट किया गया है, तो गूंज बिल्टिन डिफ़ॉल्ट रूप से बैकस्लैश-एस्केप अनुक्रमों का विस्तार करता है।

निलंबित [-f]
इस शेल के निष्पादन को तब तक निलंबित रखें जब तक इसे एक प्राप्त न हो जाए सिगकॉन्ट संकेत. एक लॉगिन
शेल को निलंबित नहीं किया जा सकता; -f इसे ओवरराइड करने और बाध्य करने के लिए विकल्प का उपयोग किया जा सकता है
निलंबन। रिटर्न स्थिति 0 है जब तक कि शेल एक लॉगिन शेल न हो -f नहीं है
आपूर्ति की गई है, या यदि कार्य नियंत्रण सक्षम नहीं है।

परीक्षण expr
[ expr ]
के मूल्यांकन के आधार पर 0 (सही) या 1 (गलत) की स्थिति लौटाएँ
सशर्त अभिव्यक्ति expr. प्रत्येक ऑपरेटर और ऑपरेंड अलग-अलग होने चाहिए
तर्क। अभिव्यक्तियाँ ऊपर वर्णित प्राथमिकताओं से बनी हैं
सशर्त अभिव्यक्ति. परीक्षण किसी विकल्प को स्वीकार नहीं करता, न ही स्वीकार करता है
के एक तर्क को नजरअंदाज करें -- विकल्पों के अंत का संकेत देने के रूप में।

घटते क्रम में सूचीबद्ध निम्नलिखित ऑपरेटरों का उपयोग करके अभिव्यक्तियों को जोड़ा जा सकता है
वरीयता क्रम। मूल्यांकन तर्कों की संख्या पर निर्भर करता है; नीचे देखें।
ऑपरेटर प्राथमिकता का उपयोग तब किया जाता है जब पाँच या अधिक तर्क हों।
! expr सच है अगर expr गलत है।
( expr )
का मान लौटाता है expr. इसका उपयोग सामान्य को ओवरराइड करने के लिए किया जा सकता है
ऑपरेटरों की प्राथमिकता.
pr1 -a pr2
सच है अगर दोनों pr1 और pr2 सच हैं।
pr1 -o pr2
यदि दोनों में से कोई भी सत्य है pr1 or pr2 सच हैं।

परीक्षण और [ के आधार पर नियमों के एक सेट का उपयोग करके सशर्त अभिव्यक्तियों का मूल्यांकन करें
तर्कों की संख्या.

0 तर्क
अभिव्यक्ति झूठी है.
1 तर्क
अभिव्यक्ति सत्य है यदि और केवल यदि तर्क शून्य नहीं है।
2 तर्क
यदि पहला तर्क है !, अभिव्यक्ति सत्य है यदि और केवल यदि दूसरा
तर्क शून्य है. यदि पहला तर्क एकात्मक सशर्त में से एक है
ऊपर नीचे सूचीबद्ध ऑपरेटर सशर्त अभिव्यक्ति, अभिव्यक्ति सत्य है
यदि यूनरी परीक्षण सत्य है। यदि पहला तर्क वैध यूनरी नहीं है
सशर्त ऑपरेटर, अभिव्यक्ति झूठी है।
3 तर्क
सूचीबद्ध क्रम में निम्नलिखित शर्तें लागू होती हैं। यदि दूसरा
तर्क ऊपर नीचे सूचीबद्ध बाइनरी सशर्त ऑपरेटरों में से एक है
सशर्त अभिव्यक्ति, अभिव्यक्ति का परिणाम का परिणाम है
ऑपरेंड के रूप में पहले और तीसरे तर्क का उपयोग करके बाइनरी परीक्षण। -a और -o
तीन तर्क होने पर ऑपरेटरों को बाइनरी ऑपरेटर माना जाता है।
यदि पहला तर्क है !, मान दो-तर्क का निषेध है
दूसरे और तीसरे तर्क का उपयोग करके परीक्षण करें। यदि पहला तर्क बिल्कुल सही है
( और तीसरा तर्क बिलकुल सही है ), परिणाम एक-तर्क परीक्षण है
दूसरे तर्क का. अन्यथा, अभिव्यक्ति झूठी है.
4 तर्क
यदि पहला तर्क है !, परिणाम तीन-तर्क का निषेध है
अभिव्यक्ति शेष तर्कों से बनी है। अन्यथा, अभिव्यक्ति
सूचीबद्ध नियमों का उपयोग करके प्राथमिकता के अनुसार विश्लेषण और मूल्यांकन किया जाता है
ऊपर।
5 या अधिक तर्क
अभिव्यक्ति को पूर्वता के अनुसार पार्स और मूल्यांकन किया जाता है
ऊपर सूचीबद्ध नियम.

जब used के साथ प्रयोग किया जाता है परीक्षण or [, < और > ऑपरेटर ASCII का उपयोग करके शब्दकोषीय रूप से क्रमबद्ध करते हैं
आदेश।

बार शेल और चलने वाली प्रक्रियाओं के लिए संचित उपयोगकर्ता और सिस्टम समय प्रिंट करें
खोल से. वापसी की स्थिति 0 है.

जाल [-एलपी] [[arg] sigspec ...]
आदेश arg शेल को सिग्नल प्राप्त होने पर पढ़ा और निष्पादित किया जाना है
sigspec. अगर arg अनुपस्थित है (और एक एकल है sigspec) या -, प्रत्येक निर्दिष्ट
सिग्नल को उसके मूल स्वभाव (प्रवेश द्वार पर उसका मूल्य) पर रीसेट कर दिया जाता है
शंख)। अगर arg शून्य स्ट्रिंग प्रत्येक द्वारा निर्दिष्ट संकेत है sigspec नजरअंदाज कर दिया जाता है
शेल द्वारा और इसके द्वारा लागू आदेशों द्वारा। अगर arg मौजूद नहीं है और -p कर दिया गया है
आपूर्ति की जाती है, फिर प्रत्येक के साथ जुड़े ट्रैप कमांड sigspec प्रदर्शित। अगर कोई नहीं
तर्क प्रदान किए जाते हैं या यदि केवल -p दिया हुआ है, जाल आदेशों की सूची प्रिंट करता है
प्रत्येक सिग्नल से जुड़ा हुआ। -l विकल्प शेल को एक सूची मुद्रित करने का कारण बनता है
सिग्नल के नाम और उनकी संगत संख्याएँ। प्रत्येक sigspec या तो एक संकेत नाम है
में परिभाषितसिग्नल.एच>, या एक सिग्नल नंबर। सिग्नल नाम केस असंवेदनशील हैं और
la हस्ताक्षर उपसर्ग वैकल्पिक है.

एक तो sigspec is बाहर निकलें (0) आदेश arg शेल से बाहर निकलने पर निष्पादित किया जाता है। यदि एक
sigspec is डीबग, आदेश arg प्रत्येक से पहले निष्पादित किया जाता है सरल आदेश, एसटी
आदेश, मामला आदेश, चयन आदेश, हर अंकगणित एसटी आदेश, और से पहले
पहला कमांड शेल फ़ंक्शन में निष्पादित होता है (देखें)। शेल व्याकरण ऊपर)। को देखें
का विवरण extdebug विकल्प दुकान इसके प्रभाव के विवरण के लिए निर्मित
पर डीबग जाल। यदि एक sigspec is वापसी, आदेश arg हर बार निष्पादित किया जाता है a
शेल फ़ंक्शन या स्क्रिप्ट के साथ निष्पादित . or स्रोत बिल्टिन खत्म
क्रियान्वित।

एक तो sigspec is अं, आदेश arg जब भी एए पाइपलाइन निष्पादित होती है (जो हो सकती है
एक साधारण कमांड से मिलकर बनता है), एक सूची, या एक कंपाउंड कमांड एक रिटर्न देता है
गैर-शून्य निकास स्थिति, निम्नलिखित शर्तों के अधीन। अं जाल नहीं है
यदि विफल कमांड तुरंत बाद वाली कमांड सूची का हिस्सा है तो निष्पादित किया जाता है
जब or जब तक कीवर्ड, एक में परीक्षण का हिस्सा if कथन, एक आदेश का भाग
ए में निष्पादित && or || अंतिम के बाद आदेश को छोड़कर सूची && or ||, कोई
पाइपलाइन में कमांड लेकिन आखिरी, या यदि कमांड का रिटर्न वैल्यू हो रहा है
का उपयोग करके उलटा किया गया !. ये वही शर्तें हैं जिनका पालन किया जाता है इरेक्सिट (-e) विकल्प।

शेल में प्रवेश पर नजरअंदाज किए गए सिग्नल को ट्रैप या रीसेट नहीं किया जा सकता है। फंसा हुआ
जिन संकेतों को नज़रअंदाज़ नहीं किया जा रहा है उन्हें उपकोश में उनके मूल मानों पर रीसेट कर दिया जाता है
या उपकोश वातावरण जब कोई बनाया जाता है। यदि कोई हो तो वापसी की स्थिति गलत है
sigspec इनवैलिड है; अन्यथा जाल सत्य लौटाता है.

टाइप [-एएफटीपीपी] नाम [नाम ...]
बिना किसी विकल्प के, बताएं कि प्रत्येक कैसे नाम यदि कमांड के रूप में उपयोग किया जाए तो इसकी व्याख्या की जाएगी
नाम। यदि -t विकल्प का उपयोग किया जाता है, टाइप एक स्ट्रिंग प्रिंट करता है जो इनमें से एक है उर्फ,
कीवर्ड, समारोह, builtinया, पट्टिका if नाम एक उपनाम, शेल आरक्षित शब्द है,
फ़ंक्शन, बिल्टिन, या डिस्क फ़ाइल, क्रमशः। यदि नाम तो फिर नहीं मिला
कुछ भी मुद्रित नहीं होता है, और गलत की निकास स्थिति लौटा दी जाती है। यदि -p विकल्प है
उपयोग किया गया, टाइप या तो उस डिस्क फ़ाइल का नाम लौटाता है जिसे निष्पादित किया जाएगा नाम
कमांड नाम के रूप में निर्दिष्ट किया गया था, या कुछ भी नहीं यदि ``type -t name'' वापस नहीं आएगा
पट्टिका-P विकल्प बल देता है ए पथ प्रत्येक को खोजें नाम, भले ही ``टाइप -t नाम''
वापस नहीं आएगा पट्टिका. यदि कोई कमांड हैश किया गया है, -p और -P हैशेड मान प्रिंट करें,
जो जरूरी नहीं कि वह फ़ाइल हो जो सबसे पहले दिखाई देती है पथ। अगर -a विकल्प है
उपयोग किया गया, टाइप उन सभी स्थानों को प्रिंट करता है जिनमें निष्पादन योग्य नाम होता है नाम। इस
उपनाम और फ़ंक्शंस शामिल हैं, यदि और केवल यदि -p विकल्प का भी प्रयोग नहीं किया गया है।
उपयोग करते समय हैशेड कमांड की तालिका की सलाह नहीं ली जाती है -a-f विकल्प दबा देता है
शेल फ़ंक्शन लुकअप, जैसा कि आदेश बिल्टिन। टाइप यदि सभी सही हों तो वापस आ जाता है
तर्क पाए जाते हैं, यदि कोई नहीं पाया जाता है तो झूठा।

अलिमित [-HSTabcdefilmnpqrstuvx [सीमा]]
शेल के लिए उपलब्ध संसाधनों और प्रारंभ की गई प्रक्रियाओं पर नियंत्रण प्रदान करता है
इसके द्वारा, उन प्रणालियों पर जो इस तरह के नियंत्रण की अनुमति देती हैं। -H और -S विकल्प निर्दिष्ट करते हैं कि
दिए गए संसाधन के लिए हार्ड या सॉफ्ट सीमा निर्धारित की जाती है। किसी कठोर सीमा को बढ़ाया नहीं जा सकता
एक बार सेट हो जाने पर गैर-रूट उपयोगकर्ता द्वारा; के मूल्य तक एक नरम सीमा बढ़ाई जा सकती है
कठिन सीमा. यदि न तो -H-S नरम और कठोर दोनों सीमाएं निर्दिष्ट हैं
तैयार। का मान है सीमा संसाधन के लिए निर्दिष्ट इकाई में एक संख्या हो सकती है
या विशेष मूल्यों में से एक कठिन, नरमया, असीमित, जो वर्तमान के लिए खड़ा है
क्रमशः कठोर सीमा, वर्तमान नरम सीमा और कोई सीमा नहीं। अगर सीमा is
छोड़े जाने पर, संसाधन की सॉफ्ट सीमा का वर्तमान मूल्य मुद्रित किया जाता है, जब तक कि
-H विकल्प दिया गया है. जब एक से अधिक संसाधन निर्दिष्ट किए जाते हैं, तो सीमा नाम और
इकाई मूल्य से पहले मुद्रित होती है। अन्य विकल्पों की व्याख्या इस प्रकार की गई है:
-a सभी मौजूदा सीमाएँ रिपोर्ट की गई हैं
-b अधिकतम सॉकेट बफ़र आकार
-c बनाई गई कोर फ़ाइलों का अधिकतम आकार
-d किसी प्रक्रिया के डेटा खंड का अधिकतम आकार
-e अधिकतम शेड्यूलिंग प्राथमिकता ("अच्छा")
-f शेल और उसके बच्चों द्वारा लिखी गई फ़ाइलों का अधिकतम आकार
-i लंबित सिग्नलों की अधिकतम संख्या
-l अधिकतम आकार जिसे मेमोरी में लॉक किया जा सकता है
-m अधिकतम निवासी सेट आकार (कई सिस्टम इस सीमा का सम्मान नहीं करते हैं)
-n खुले फ़ाइल डिस्क्रिप्टर की अधिकतम संख्या (अधिकांश सिस्टम इसकी अनुमति नहीं देते हैं
मूल्य निर्धारित किया जाना है)
-p 512-बाइट ब्लॉक में पाइप का आकार (यह सेट नहीं किया जा सकता है)
-q POSIX संदेश कतार में बाइट्स की अधिकतम संख्या
-r अधिकतम वास्तविक समय शेड्यूलिंग प्राथमिकता
-s अधिकतम ढेर आकार
-t सीपीयू समय की अधिकतम मात्रा सेकंड में
-u एकल उपयोगकर्ता के लिए उपलब्ध प्रक्रियाओं की अधिकतम संख्या
-v शेल और कुछ पर उपलब्ध वर्चुअल मेमोरी की अधिकतम मात्रा
सिस्टम, अपने बच्चों के लिए
-x फ़ाइल लॉक की अधिकतम संख्या
-T धागों की अधिकतम संख्या

If सीमा दिया गया है, और -a विकल्प का उपयोग नहीं किया जाता है, सीमा का नया मान है
निर्दिष्ट संसाधन. यदि कोई विकल्प नहीं दिया गया है तो -f ऐसा माना जाता है। मान अंदर हैं
1024-बाइट वेतन वृद्धि, को छोड़कर -t, जो सेकंड में है; -p, जो की इकाइयों में है
512-बाइट ब्लॉक; और -T, -b, -n, तथा -u, जो अनस्केल्ड मान हैं। वापसी
स्थिति 0 है जब तक कि कोई अमान्य विकल्प या तर्क प्रदान नहीं किया जाता है, या कोई त्रुटि नहीं होती है
नई सीमा तय करते समय.

umask [-p] [-S] [मोड]
उपयोगकर्ता फ़ाइल-निर्माण मास्क पर सेट है मोड. अगर मोड एक अंक से शुरू होता है, यह है
एक अष्टाधारी संख्या के रूप में व्याख्या की गई; अन्यथा इसकी व्याख्या एक प्रतीकात्मक मोड मास्क के रूप में की जाती है
द्वारा स्वीकृत के समान परिवर्तन विद्या(1). अगर मोड छोड़ा गया है, का वर्तमान मूल्य
मुखौटा मुद्रित है. -S विकल्प के कारण मुखौटा प्रतीकात्मक रूप में मुद्रित होता है;
डिफ़ॉल्ट आउटपुट एक ऑक्टल संख्या है। यदि -p विकल्प प्रदान किया गया है, और मोड is
छोड़े जाने पर, आउटपुट ऐसे रूप में है जिसे इनपुट के रूप में पुन: उपयोग किया जा सकता है। वापसी की स्थिति है
0 यदि मोड सफलतापूर्वक बदला गया था या यदि नहीं मोड तर्क प्रदान किया गया था, और
अन्यथा मिथ्या।

अनलिया [-a] [नाम ...]
प्रत्येक को हटा दें नाम परिभाषित उपनामों की सूची से. अगर -a आपूर्ति की जाती है, सभी उपनाम
परिभाषाएँ हटा दी जाती हैं. जब तक आपूर्ति नहीं की जाती तब तक वापसी मान सत्य है नाम एक नहीं है
परिभाषित उपनाम.

सेट नहीं [-fv] [-n] [नाम ...]
प्रत्येक के लिए नाम, संबंधित वेरिएबल या फ़ंक्शन को हटा दें। यदि -v विकल्प है
दिया गया, प्रत्येक नाम एक शेल वेरिएबल को संदर्भित करता है, और वह वेरिएबल हटा दिया जाता है। पढ़ना-
केवल वेरिएबल्स को अनसेट नहीं किया जा सकता है। अगर -f प्रत्येक को निर्दिष्ट किया गया है नाम एक खोल को संदर्भित करता है
फ़ंक्शन, और फ़ंक्शन परिभाषा हटा दी गई है। यदि -n विकल्प दिया है,
और नाम के साथ एक चर है नामरेफ विशेषता, नाम के बजाय अशांत हो जाएगा
यह जिस चर का संदर्भ देता है। -n कोई प्रभाव नहीं पड़ता यदि -f विकल्प उपलब्ध कराया गया है। अगर कोई नहीं
प्रत्येक विकल्प की आपूर्ति की जाती है नाम एक चर को संदर्भित करता है; यदि कोई वेरिएबल नहीं है
वह नाम, उस नाम वाला कोई भी फ़ंक्शन अनसेट है। प्रत्येक अनसेट वेरिएबल या फ़ंक्शन
बाद के आदेशों को पारित पर्यावरण से हटा दिया गया है। यदि कोई हो
COMP_WORDब्रेक, RANDOM, सेकंड, लिनेनो, हिस्टसीएमडी, FUNCNAME, समूहया, डिरस्टैक
अस्थिर होने पर, वे अपने विशेष गुण खो देते हैं, भले ही बाद में उन्हें रीसेट कर दिया जाए।
निकास स्थिति तब तक सत्य है जब तक a नाम केवल पढ़ने योग्य है.

प्रतीक्षा [-n] [n ...]
प्रत्येक निर्दिष्ट चाइल्ड प्रक्रिया की प्रतीक्षा करें और उसकी समाप्ति स्थिति लौटाएँ। प्रत्येक n
एक प्रक्रिया आईडी या कार्य विनिर्देश हो सकता है; यदि कोई कार्य विवरण दिया गया है, तो सभी प्रक्रियाएँ
उस नौकरी की पाइपलाइन का इंतजार किया जा रहा है। अगर n नहीं दिया गया है, सभी वर्तमान में सक्रिय हैं
चाइल्ड प्रक्रियाओं की प्रतीक्षा की जाती है, और वापसी की स्थिति शून्य है। यदि -n विकल्प है
आपूर्ति की, प्रतीक्षा किसी भी कार्य के समाप्त होने की प्रतीक्षा करता है और उसकी निकास स्थिति लौटाता है। अगर n
एक गैर-मौजूद प्रक्रिया या कार्य निर्दिष्ट करता है, वापसी स्थिति 127 है। अन्यथा,
वापसी की स्थिति अंतिम प्रक्रिया या प्रतीक्षा की गई नौकरी की निकास स्थिति है।

वर्जित शेल


If खूब जोर से पीटना नाम से शुरू किया गया है बकवासया, -r मंगलाचरण पर विकल्प प्रदान किया जाता है
शेल प्रतिबंधित हो जाता है. किसी वातावरण को अधिक स्थापित करने के लिए प्रतिबंधित शेल का उपयोग किया जाता है
मानक शेल से नियंत्रित। यह समान रूप से व्यवहार करता है खूब जोर से पीटना अपवाद
निम्नलिखित की अनुमति नहीं है या उनका निष्पादन नहीं किया गया है:

· निर्देशिकाओं को बदलना cd

· के मानों को सेट करना या अनसेट करना शेल, पथ, लिया, BASH_ENV

· युक्त कमांड नाम निर्दिष्ट करना /

· एक फ़ाइल नाम निर्दिष्ट करना जिसमें a / के तर्क के रूप में . अंतर्निहित आदेश

· एक तर्क के रूप में एक स्लैश युक्त फ़ाइल नाम निर्दिष्ट करना -p विकल्प
हैश अंतर्निहित आदेश

· स्टार्टअप पर शेल वातावरण से फ़ंक्शन परिभाषाएँ आयात करना

· का मान पार्स करना शेलॉप्स स्टार्टअप पर शेल वातावरण से

· >, >|, <>, >&, &>, और >> पुनर्निर्देशन ऑपरेटरों का उपयोग करके आउटपुट को पुनर्निर्देशित करना

· का उपयोग कार्यकारी शेल को किसी अन्य कमांड से बदलने के लिए अंतर्निहित कमांड

· के साथ अंतर्निहित कमांड जोड़ना या हटाना -f और -d के विकल्प सक्षम
अंतर्निहित आदेश

· का उपयोग सक्षम अक्षम शेल बिल्टिन को सक्षम करने के लिए बिल्टइन कमांड

· निर्दिष्ट करना -p विकल्प आदेश अंतर्निहित आदेश

· प्रतिबंधित मोड को बंद करना सेट +r or सेट +o प्रतिबंधित.

ये प्रतिबंध किसी भी स्टार्टअप फ़ाइल को पढ़ने के बाद लागू किए जाते हैं।

जब एक कमांड जो शेल स्क्रिप्ट के रूप में पाई जाती है उसे निष्पादित किया जाता है (देखें)। कमान कार्यान्वयन
ऊपर), बकवास स्क्रिप्ट को निष्पादित करने के लिए उत्पन्न शेल में किसी भी प्रतिबंध को बंद कर देता है।

onworks.net सेवाओं का उपयोग करके ऑनलाइन बैश-स्टैटिक का उपयोग करें


फ्री सर्वर और वर्कस्टेशन

विंडोज और लाइनेक्स एप डाउनलोड करें

लिनक्स कमांड

Ad