1. Learn
  2. /
  3. कोर्स
  4. /
  5. Shell परिचय

Connected

अभ्यास

मैं शेल स्क्रिप्ट में लूप्स कैसे लिख सकता/सकती हूँ?

Shell स्क्रिप्ट्स में लूप्स भी हो सकते हैं। आप इन्हें सेमी-कोलन के साथ एक ही पंक्ति में लिख सकते हैं, या बेहतर पठनीयता के लिए सेमी-कोलन के बिना कई पंक्तियों में बाँट सकते हैं:

# प्रत्येक फ़ाइल के पहले और आखिरी डेटा रिकॉर्ड प्रिंट करें।
for filename in $@
do
    head -n 2 $filename | tail -n 1
    tail -n 1 $filename
done

(आपको लूप के अंदर कमांड्स को इंडेंट करना ज़रूरी नहीं है, लेकिन ऐसा करने से चीजें अधिक स्पष्ट हो जाती हैं.)

इस स्क्रिप्ट की पहली पंक्ति एक comment है, जो पढ़ने वालों को बताती है कि स्क्रिप्ट क्या करती है। Comments # करैक्टर से शुरू होते हैं और पंक्ति के अंत तक चलते हैं। आप भविष्य में खुद को धन्यवाद देंगे यदि आप हर स्क्रिप्ट में ऐसी संक्षिप्त व्याख्याएँ जोड़ेंगे, जैसा यहाँ दिखाया गया है।

स्मरण के तौर पर, Nano में जो आपने लिखा है उसे सेव करने के लिए Ctrl + O दबाइए ताकि फ़ाइल लिखी जा सके, फिर फ़ाइलनाम की पुष्टि करने के लिए Enter दबाइए, और फिर एडिटर से बाहर निकलने के लिए Ctrl + X दबाइए.

निर्देश 1/3

undefined XP
  • 1

    स्क्रिप्ट date-range.sh में placeholders भरें — $filename (दो बार), head, और tail — ताकि यह एक या अधिक फ़ाइलों से पहली और आखिरी तारीख प्रिंट करे।

  • 2

    seasonal/*.csv का उपयोग करके नामों से मिलान करें और सभी चार seasonal डेटा फ़ाइलों पर date-range.sh चलाएँ।

  • 3

    seasonal/*.csv का उपयोग करके नामों से मिलान करते हुए सभी चार seasonal डेटा फ़ाइलों पर date-range.sh चलाएँ, और उसके आउटपुट को sort में पाइप करें ताकि आप देखें कि आपकी स्क्रिप्ट्स Unix के बिल्ट-इन कमांड्स की तरह ही इस्तेमाल की जा सकती हैं.