प्रोजेक्ट फ़ोल्डर खोलें
वह फ़ोल्डर चुनें जिसमें आपकी स्क्रिप्ट हैं, या कोई खाली फ़ोल्डर, और उसे चैट का वर्किंग फ़ोल्डर बनाएँ। फ़ाइल टूल उसी के भीतर काम करते हैं।
जो लोग ‘bash script कैसे बनाएँ’ या ‘bash script कैसे लिखें’ खोजते हैं, उनके पास आमतौर पर कोई एक काम होता है जिसे वे हाथ से दोहराते हैं, जैसे किसी फ़ोल्डर की लॉग फ़ाइलें गिनना। एक काम से शुरू करें। लक्ष्य ऐसी फ़ाइल है जिसे आप पढ़ सकें, परख सकें और दोबारा चला सकें, और यहाँ एजेंट उसका मसौदा लिखता है, सिंटैक्स जाँचता है और हर नतीजा कार्ड में दिखाता है।
वह फ़ोल्डर चुनें जिसमें आपकी स्क्रिप्ट हैं, या कोई खाली फ़ोल्डर, और उसे चैट का वर्किंग फ़ोल्डर बनाएँ। फ़ाइल टूल उसी के भीतर काम करते हैं।
बताएँ कि स्क्रिप्ट क्या पढ़े, क्या छापे और किसे न बदले, जैसे लॉग फ़ाइलों की रीड-ओनली गिनती।
स्क्रिप्ट को चलाए बिना समझाने के लिए Plan only चुनें, या कुछ बदलने वाली हर कार्रवाई को मंज़ूर करने के लिए Ask first चुनें।
पहले bash -n चलाएँ, फिर किसी टेस्ट फ़ोल्डर पर ट्रायल, और हर कार्ड के आउटपुट व एग्ज़िट कोड की तुलना अपनी उम्मीद से करें।
logs3 फ़ाइलेंcount-logs.shसेव हो गईbash -n count-logs.shexit 0bash count-logs.sh logsexit 0#!/usr/bin/env bash
# count-logs.sh - count lines in .log files of a folder
# usage: bash count-logs.sh [folder] (read-only)
set -eu
dir="${1:-.}"
count=$(find "$dir" -maxdepth 1 -name "*.log" | wc -l)
echo "found $count log file(s) in $dir"
for file in "$dir"/*.log; do
[ -e "$file" ] || continue
wc -l "$file"
doneस्क्रिप्ट find से .log फ़ाइलें गिनती है और wc से हर एक की पंक्तियों की संख्या छापती है। वह सिर्फ़ पढ़ती है, और set -eu शेल को अनसेट वेरिएबल पर और ज़्यादातर नाकाम कमांड पर रोक देता है।
अपना मसौदा वर्किंग फ़ोल्डर में रखें और एजेंट से उसकी समीक्षा करने को कहें। read_file स्क्रिप्ट लोड करता है, grep वे जगहें खोजता है जहाँ कोई वेरिएबल इस्तेमाल हुआ है, और एजेंट छूटे हुए डबल कोट, बिना जाँचे आर्ग्युमेंट और अस्पष्ट नामों की ओर इशारा करता है। यही समीक्षा आपकी Bash स्टार्टअप फ़ाइल पर भी चलती है: पूछें कि उसकी कौन-सी कमांड हर बार शुरू होने पर चलती हैं। Plan only में एजेंट स्क्रिप्ट को चलाए बिना समझाता है। जब आप सुधार माँगते हैं, तो edit_file हर बदलाव को diff के रूप में दिखाता है, और आप उसे तभी स्वीकार करते हैं जब आप उसे समझ लें।
नए लोगों के लिए एक सरल Bash टाइमर स्क्रिप्ट में सिर्फ़ एक वेरिएबल, एक for लूप, echo और sleep चाहिए। एजेंट से ऐसा काउंटडाउन माँगें जो सेकंड की संख्या $1 से ले और बचे हुए सेकंड छापे। write_file countdown.sh सेव करता है, और Shell bash -n चलाता है और फिर 3 जैसी छोटी संख्या के साथ ट्रायल। चूँकि sleep सिर्फ़ इंतज़ार करता है, इसलिए स्क्रिप्ट डिस्क पर कुछ नहीं बदलती। Bash से इमेज को ASCII में बदलने जैसे विचार इन्हीं लूप और वेरिएबल पर बनते हैं, हालाँकि इमेज फ़ॉर्मैट के लिए अतिरिक्त सावधानी चाहिए। आउटपुट कार्ड देखें, एग्ज़िट कोड जाँचें और कोड को दोबारा इस्तेमाल करने से पहले पढ़ लें।