एग्ज़िट कोड


WP-CLIWP-CLI WP-CLI, WordPress के लिए कमांड लाइन इंटरफ़ेस है, जिसका उपयोग प्रोग्रामेटिक तरीके से प्रशासनिक और विकास संबंधी कार्य करने के लिए किया जाता है। प्रोजेक्ट पेज http://wp-cli.org/ https://make.wordpress.org/cli/ है। एग्ज़िट कोड के लिए व्यापक रूप से अपनाए गए Unix नियमों का पालन करता है: 0 सफलता का संकेत देता है (कमांड की प्राथमिक शर्त पूरी हो गई), जबकि शून्य से अलग मान यह संकेत देते हैं कि प्राथमिक शर्त पूरी नहीं हुई। यह या तो किसी संचालन संबंधी त्रुटि को दर्शा सकता है (कमांड अनुरोधित कार्य नहीं कर सका) या अपेक्षित नकारात्मक परिणाम को, जिसकी जाँच कॉल करने वाली स्क्रिप्ट द्वारा की जानी होती है (उदाहरण के लिए, “इंस्टॉल नहीं है”)। WP-CLI कमांड को कॉल करने वाली स्क्रिप्ट यह निर्धारित करने के लिए एग्ज़िट कोड की जाँच कर सकती हैं कि आगे बढ़ना है, पुनः प्रयास करना है या प्रक्रिया रोकनी है।

मानक एग्ज़िट कोड

एग्ज़िट कोड अर्थ
0 कमांड सफलतापूर्वक पूरा हुआ। अनुरोधित कार्य अपेक्षा के अनुसार किया गया।
1 कमांड विफल हुआ। WP-CLI अपेक्षा के अनुसार कार्य नहीं कर सका (जैसे अमान्य आर्ग्युमेंट, WordPress नहीं मिला या कोई गंभीर त्रुटि हुई)।

WP_CLI::error() (दस्तावेज़) विफलता की रिपोर्ट करने और कोड 1 के साथ बाहर निकलने का पारंपरिक तरीका है।

WP_CLI::halt() (दस्तावेज़) का उपयोग किसी विशिष्ट शून्येतर कोड के साथ बाहर निकलने के लिए किया जा सकता है, जब कमांड को कॉल करने वाली स्क्रिप्ट तक कोई विशेष परिणाम पहुँचाना हो।

बूलियन-परिणाम वाली कमांड के एग्ज़िट कोड

कुछ कमांड आउटपुट के बजाय सीधे एग्ज़िट कोड के माध्यम से द्विआधारी परिणाम बताने के लिए बनाई गई हैं। ये कमांड अब भी मानक 0/1 कोड का उपयोग करती हैं, लेकिन 1 का अर्थ “संचालन संबंधी त्रुटि” के बजाय “शर्त पूरी नहीं हुई” होता है। उदाहरण के लिए:

  • wp plugin is-installed <plugin> का एग्ज़िट कोड 0 तब होता है जब प्लगइनPlugin प्लगइन सॉफ़्टवेयर का एक भाग होता है, जिसमें ऐसे फ़ंक्शन का समूह होता है जिन्हें WordPress वेबसाइट में जोड़ा जा सकता है। ये आपके WordPress वेबसाइटों की कार्यक्षमता बढ़ा सकते हैं या नई सुविधाएँ जोड़ सकते हैं। WordPress प्लगइन PHP प्रोग्रामिंग भाषा में लिखे जाते हैं और WordPress के साथ सहज रूप से एकीकृत होते हैं। ये WordPress.org प्लगइन डायरेक्टरी https://wordpress.org/plugins/ में निःशुल्क उपलब्ध हो सकते हैं या किसी तृतीय-पक्ष से सशुल्क प्लगइन के रूप में मिल सकते हैं। इंस्टॉल है और 1 तब होता है जब यह इंस्टॉल नहीं है।
  • wp theme is-installed <theme> भी इसी पैटर्न का पालन करता है।
  • wp core is-installed का एग्ज़िट कोड 0 तब होता है जब WordPress इंस्टॉल हो, और 1 तब जब वह इंस्टॉल न हो।

“शर्त पूरी नहीं हुई” (त्रुटि के बजाय) का संकेत देने के लिए एग्ज़िट कोड 1 का उपयोग तब करें, जब:

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

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

स्क्रिप्ट में एग्ज़िट कोड का उपयोग

क्योंकि WP-CLI मानक एग्ज़िट कोड का उपयोग करता है, आप WP-CLI कमांड को सीधे शेल कंडीशनल में उपयोग कर सकते हैं:

# सक्रिय करने का प्रयास करने से पहले जाँचें कि कोई प्लगइन इंस्टॉल है या नहीं
if wp plugin is-installed my-plugin; then
    wp plugin activate my-plugin
else
    echo "प्लगइन इंस्टॉल नहीं है"
    exit 1
fi

किसी भी WP-CLI कमांड के बाद $? की जाँच करके यह भी पता लगाया जा सकता है कि वह सफल हुई या नहीं:

wp core update
if [ "$?" -ne 0 ]; then
    echo "अपडेट विफल हुआ"
fi