स्क्रिप्ट चलाएं
Shell WSL या SSH के माध्यम से आपकी Bash स्क्रिप्ट चलाता है और चैट में असली एग्जिट कोड दिखाता है।
Bash एग्जिट कोड वह संख्या है जो एक कमांड समाप्त होने पर लौटाता है: 0 सफलता के लिए, 1 से 255 तक विफलता के लिए। Pageferry Shell के साथ आपका स्क्रिप्ट चलाता है, उस संख्या को असली प्रक्रिया से पढ़ता है और आउटपुट के बगल में एक चैट कार्ड में दिखाता है। यह फ़ाइलों को भी एडिट करता है और पहले डिफ दिखाता है।
Shell WSL या SSH के माध्यम से आपकी Bash स्क्रिप्ट चलाता है और चैट में असली एग्जिट कोड दिखाता है।
read_file और grep आपकी स्क्रिप्ट को चैट में दिखाते हैं, ताकि आप ढूंढ सकें कि $1 और $2 कहाँ उपयोग किए गए हैं।
edit_file एक परिवर्तन का प्रस्ताव देता है और डिफ दिखाता है। Ask first के तहत यह आपकी मंजूरी का इंतज़ार करता है।
हर एक्शन चैट में एक कार्ड बन जाता है। Shell असली एग्जिट कोड रिपोर्ट करता है, edit_file एक डिफ दिखाता है, और Ask first किसी भी बदलाव से पहले आपकी मंजूरी का इंतज़ार करता है। पूरा आउटपुट या पूरा डिफ पढ़ने के लिए एक कार्ड खोलें।
bash check.sh a bexit 0bash check.shexit 2check.shreadexit3 matchesbash -n check.shexit 0आप एजेंट से पूछते हैं कि पता चले कि check.sh को कोई आर्ग्युमेंट नहीं मिलने पर क्या होता है। read_file स्क्रिप्ट खोलता है, और Shell bash check.sh को नाम के बाद कुछ भी दिए बिना चलाता है। कार्ड असली आउटपुट और एग्जिट कोड दिखाता है, जो 2 है यदि स्क्रिप्ट अपनी उपयोग लाइन स्टैंडर्ड एरर पर प्रिंट करता है और exit 2 के साथ समाप्त होता है। आखिरी कमांड का bash एग्जिट कोड $? में सेव होता है, और कॉलर केवल उस संख्या को देखता है, इसलिए एक स्क्रिप्ट जिसमें एक स्पष्ट कोड के साथ समाप्ति होती है, एक ऐसी स्क्रिप्ट की तुलना में आसानी से टेस्ट की जा सकती है जो हमेशा 1 लौटाती है। Shell फिर स्क्रिप्ट को दो मानों के साथ फिर से चलाता है, और कार्ड को 0 दिखना चाहिए। यदि कोड आपको हैरान करते हैं, तो कार्ड पढ़ें, फिर Ask first के तहत edit_file से एक फिक्स का प्रस्ताव दें और डिफ की समीक्षा करें।
आप टाइप करते हैं “मुझे getopt समझाएं” और एजेंट सादे शब्दों में जवाब देता है: getopts छोटे विकल्पों जैसे -v या -f file के लिए एक Bash बिल्ट-इन है, जबकि getopt एक अलग कमांड है जो लंबे विकल्पों जैसे --file को भी संभालता है और सिस्टम के बीच अलग व्यवहार करता है। फिर read_file आपकी स्क्रिप्ट खोलता है, edit_file एक getopts लूप जोड़ता है और आप डिफ देखते हैं। Shell स्क्रिप्ट को -v, -f और एक गलत विकल्प के साथ चलाता है, और हर कार्ड का अपना एग्जिट कोड होता है। एक गलत विकल्प 2 के साथ समाप्त होना चाहिए, जो गलत उपयोग का सामान्य कोड है। कुछ विकल्पों के लिए case और shift के साथ एक while लूप काफी है, इसलिए यदि आप वह संस्करण पसंद करते हैं तो उसका अनुरोध करें। डिफ को स्वीकार करने से पहले इसे पढ़ें।
स्क्रिप्ट को स्पेस वाले आर्ग्युमेंट्स पास करना तब विफल हो जाता है जब मान क्वोट नहीं किए गए होते हैं, क्योंकि शेल उन्हें अलग-अलग शब्दों में बांट देता है। एजेंट read_file के साथ फ़ाइल पढ़ता है, अनक्वोटेड $1 और $@ को ढूंढता है, और edit_file उनके आसपास डबल क्वोट्स का प्रस्ताव देता है। Shell फिर स्क्रिप्ट को "दो शब्द" जैसे एक मान के साथ चलाता है, और आउटपुट दिखाता है कि क्या यह एक लाइन के रूप में आता है या दो के रूप में। कमांड लाइन आर्ग्युमेंट्स प्रबंधित करने के लिए एक चाल shift है, जो पहले मान को हटा देता है ताकि एक लूप शेष भाग के माध्यम से चल सके, और एजेंट उसे उसी डिफ में जोड़ सकता है। Ask first के तहत एडिट आपको इंतज़ार करता है। डिफ की समीक्षा करें, टेस्ट फिर से चलाएं और दो आउटपुट की तुलना स्वयं करें।
जो कोई “bash exit script” के लिए खोजता है, वह आमतौर पर exit बिल्ट-इन ढूंढ रहा होता है: exit N स्क्रिप्ट को N स्थिति के साथ समाप्त करता है, जबकि return N केवल एक फंक्शन से बाहर जाता है। एजेंट शीर्ष पर set -eu और set -o pipefail जोड़ सकता है, ताकि स्क्रिप्ट त्रुटियों और अनसेट वेरिएबल्स पर रुक जाए, और फिर bash -n के साथ सिंटैक्स चेक के लिए और bash -x के साथ हर कमांड प्रिंट करने के लिए फ़ाइल चलाता है। यदि return आखिरी कमांड की स्थिति नहीं दे रहा है, तो आमतौर पर बीच में एक अन्य कमांड चला था, क्योंकि $? केवल सबसे हालिया कमांड के एग्जिट कोड को धारण करता है। Shell कार्ड ट्रैस दिखाता है। इसे ऊपर से पढ़ें, स्क्रिप्ट की तुलना करें और निर्णय लें कि एडिट बना रहे या नहीं।
Pageferry Windows के लिए एक डेस्कटॉप ऐप है, होस्टेड सर्विस या प्लगइन नहीं। यह केवल आपकी अपनी फ़ाइलों, आपके अपने पीसी और उन सर्वरों के लिए है जिनका उपयोग करने की अनुमति आपको है। आप काम को उस सीमा में रखते हैं, क्योंकि एजेंट इसे लागू नहीं करता, और Shell, web और SSH वर्किंग फ़ोल्डर तक सीमित नहीं हैं। कोड और परिणाम गलत हो सकते हैं, इसलिए डिफ पढ़ें और टेस्ट करें। टूल आउटपुट में दिखाए गए सीक्रेट्स को मॉडल तक पहुंचने से पहले रेडैक्ट कर दिया जाता है।