•Arnošt Havelka
प्रीमियम: बैश स्क्रिप्ट अभ्यास
एक यथार्थवादी बहु-चरण परिदृश्य को हल करने के लिए चर, फ़ंक्शन, लूप और शर्तों को मिलाएं।
इंटरएक्टिव पाठ शुरू करेंअब सब कुछ मिलाएं: चर, फ़ंक्शन, लूप और शर्तें एक वास्तविक-विश्व स्वचालन स्क्रिप्ट बनाने के लिए।
चरण 1: नींव बनाएं
Command Prompt
(empty)
C:\Users\User>ls
लूप के साथ कई लॉग फ़ाइलें बनाएं। प्रत्येक पुनरावृत्ति एक नई फ़ाइल लिखती है।
चरण 2: परिणामों का विश्लेषण करें
Command Prompt
log_1.txt
log_2.txt
log_3.txt
C:\Users\User>ls backups
एक साथ सभी फ़ाइलों को संसाधित करने के लिए ग्लोब पैटर्न का उपयोग करें।
चरण 3: निकालें और गिनें
Command Prompt
Log entry 1
Log entry 2
Log entry 3
C:\Users\User>cat backups/*.txt
अपने डेटा से सार्थक आंकड़े प्राप्त करने के लिए पाइप और कमांड को मिलाएं।
वास्तविक-विश्व परिदृश्य
आप 10 माइक्रोसर्विसेज का प्रबंधन कर रहे हैं। प्रत्येक एक डिप्लॉय लॉग उत्पन्न करता है। एक स्क्रिप्ट बनाएं जो:
- बनाती है सभी वर्तमान लॉग के साथ एक बैकअप निर्देशिका।
- फ़िल्टर करती है त्रुटि लाइनों के लिए।
- गिनती करती है सभी सेवाओं में कुल त्रुटियों की।
function check_deploys {
mkdir -p backup_deploys
for service in web api cache queue worker db; do
if [ -f "$service.log" ]; then
cp "$service.log" backup_deploys/
error_count=$(grep -c 'ERROR' "backup_deploys/$service.log")
echo "Service $service has $error_count errors"
fi
done
}
check_deploys
चेकलिस्ट जिसे आप पुन: उपयोग कर सकते हैं
for var in list; do ...; doneके साथ पुनरावृत्ति करें।if [ test ]; then ...; fiके साथ शर्तें जांचें।$(command)के साथ आउटपुट कैप्चर करें।cat *.ext | grep | wc -lके साथ फ़ाइलें प्रोसेस करें।- संबंधित कार्यों को बंडल करने वाले फ़ंक्शन के साथ व्यवस्थित करें।
ज्ञान जांच
1 / 2आप एक कमांड कैसे चलाते हैं और उसका परिणाम एक चर में संग्रहीत करते हैं?
संदर्भ
ये दस्तावेज़ लिंक इस लेख में उपयोग किए गए कमांड के लिए आधिकारिक विवरण प्रदान करते हैं।