ऑनवर्क्स लिनक्स और विंडोज ऑनलाइन वर्कस्टेशन

प्रतीक चिन्ह

वर्कस्टेशन के लिए मुफ्त होस्टिंग ऑनलाइन

<पिछला | विषय-सूची | अगला>

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

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



[मुझे@लिनक्सबॉक्स ~]$ एलएस -डी /यूएसआर/बिन

/ Usr / bin

[मुझे@लिनक्सबॉक्स ~]$ $ echo?

0

[मुझे@लिनक्सबॉक्स ~]$ ls -d /bin/usr

ls: /bin/usr तक नहीं पहुंच सकता: ऐसी कोई फ़ाइल या निर्देशिका नहीं [me@linuxbox ~]$ $ echo?

2

[मुझे@लिनक्सबॉक्स ~]$ एलएस -डी /यूएसआर/बिन

/ Usr / bin

[मुझे@लिनक्सबॉक्स ~]$ $ echo?

0

[मुझे@लिनक्सबॉक्स ~]$ ls -d /bin/usr

ls: /bin/usr तक नहीं पहुंच सकता: ऐसी कोई फ़ाइल या निर्देशिका नहीं [me@linuxbox ~]$ $ echo?

2

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


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

शेल दो बेहद सरल अंतर्निहित कमांड प्रदान करता है जो शून्य या एक निकास स्थिति के साथ समाप्त होने के अलावा कुछ नहीं करता है। <strong>उद्देश्य</strong> कमांड हमेशा सफलता से क्रियान्वित होता है- पूरी तरह से और असत्य आदेश हमेशा असफल रूप से निष्पादित होता है:


[मुझे@लिनक्सबॉक्स ~]$ <strong>उद्देश्य</strong> [मुझे@लिनक्सबॉक्स ~]$ $ echo? 0

[मुझे@लिनक्सबॉक्स ~]$ असत्य [मुझे@लिनक्सबॉक्स ~]$ $ echo? 1

[मुझे@लिनक्सबॉक्स ~]$ <strong>उद्देश्य</strong> [मुझे@लिनक्सबॉक्स ~]$ $ echo? 0

[मुझे@लिनक्सबॉक्स ~]$ असत्य [मुझे@लिनक्सबॉक्स ~]$ $ echo? 1


हम इन कमांड का उपयोग यह देखने के लिए कर सकते हैं कि कैसे if कथन काम करता है. क्या if कथन वास्तव में आदेशों की सफलता या विफलता का मूल्यांकन करता है:



[मुझे@लिनक्सबॉक्स ~]$ यदि सही; फिर गूंजें "यह सच है"; फाई

यह सच है।

[मुझे@लिनक्सबॉक्स ~]$ यदि असत्य है; फिर गूंजें "यह सच है"; फाई

[मुझे@लिनक्सबॉक्स ~]$

[मुझे@लिनक्सबॉक्स ~]$ यदि सही; फिर गूंजें "यह सच है"; फाई

यह सच है।

[मुझे@लिनक्सबॉक्स ~]$ यदि असत्य है; फिर गूंजें "यह सच है"; फाई

[मुझे@लिनक्सबॉक्स ~]$


आदेश प्रतिध्वनि "यह सच है।" आदेश का पालन करते समय निष्पादित किया जाता है if exe- सफलतापूर्वक कट जाता है, और कमांड फॉलो होने पर निष्पादित नहीं होता है if सफलतापूर्वक निष्पादित नहीं होता. यदि आदेशों की एक सूची अनुसरण करती है if, सूची में अंतिम आदेश का मूल्यांकन किया जाता है:


[me@linuxbox ~]$ यदि गलत है; सत्य; फिर गूंजें "यह सच है"; फाई यह सच है.

[me@linuxbox ~]$ यदि सत्य है; असत्य; फिर गूंजें "यह सच है"; fi [me@linuxbox ~]$

[me@linuxbox ~]$ यदि गलत है; सत्य; फिर गूंजें "यह सच है"; फाई यह सच है.

[me@linuxbox ~]$ यदि सत्य है; असत्य; फिर गूंजें "यह सच है"; fi [me@linuxbox ~]$


OnWorks पर शीर्ष OS क्लाउड कंप्यूटिंग: