Linux-AWK/C2/Loops-in-awk/Nepali
|
|
00:01 | नमस्कार, awk का लूपहरूको बारेमा रहेको स्पोकन ट्युटोरियल मा तपाईलाई स्वागत छ |
00:06 | यो ट्युटोरियलमा, हामी यी कुराहरू सिक्ने छौं-
awk मा while, do-while, for र अन्य थप लूपिंग कन्सट्रक्टहरू |
00:16 | यसको लागि हामी केही उदाहरणहरू प्रयोग गर्ने छौं |
00:20 | यो ट्युटोरियल रेकर्ड गर्न, म प्रयोग गर्दै छु:
उबुन्टु लिनक्स १६.०४ अपरेटिंग सिस्टम र gedit टेक्स्ट एडिटर ३.२०.१ |
00:32 | तपाई आफ्नो रोजाईको कुनैपनि टेक्स्ट एडिटर प्रयोग गर्न सक्नुहुन्छ |
00:36 | यो ट्युटोरियल अभ्यास गर्न, तपाईले हाम्रो वेबसाइटको अघिल्ला awk ट्युटोरियलहरू हेर्नुपर्ने हुन्छ |
00:43 | तपाईसँग प्रोग्रामिंग ल्याङ्ग्वेज जस्तै: C वा C++ को ज्ञान हुनुपर्छ |
00:50 | अन्यथा, हाम्रो वेबसाइटमा रहेको सम्बन्धित ट्युटोरियलहरू हेर्नुहोला |
00:56 | यो ट्युटोरियलमा प्रयोग गरिएका फाइलहरू यो पेजको Code Files लिङ्कमा उपलब्ध छ
तिनीहरूलाई डाउनलोड गरी प्रयोग गर्नुहोला |
01:06 | एउटा लूप ले हामीलाई एक वा एक भन्दा बढि कार्यहरू दोहोराउन दिन्छ |
01:12 | awk मा उपलब्ध लूपहरू मा while, do-while र for छन् |
01:18 | यहाँ 'while' लूप को सिन्ट्याक्स देख्न सकिन्छ |
01:22 | While लूप ले पहिले दिएको कन्डिसन सही छ कि जाँच्ने छ |
01:27 | यदि सही भएमा, यसले बडी भित्रको कोड एक्जिक्युट गर्ने छ
यो लूप दिएको while कन्डिसन सही भएसम्म दोहोरिने छ |
01:37 | हामी, पहिले प्रयोग गरेको awkdemo.txt फाइल नै प्रयोग गर्ने छौं |
01:43 | मैले पहिले नै एउटा स्क्रिप्ट लेखेर while_loop.awk मा राखेकी छु |
01:48 | सोही फाइल यो ट्युटोरियलको Code Files लिंकमा पनि उपलब्ध छ |
01:53 | यहाँ, हामीले फिल्ड सेपरेटर मा पाइप चिन्ह राखेका छौं |
01:58 | सुरुमा हामीले लूप भेरिएबल i को मान 1 राखेका छौं |
02:04 | यहाँ, हामीले अर्को एउटा भेरिएबल f मा पनि 1 राखेका छौं |
02:10 | भेरिएबल f ले फिल्ड काउन्टर वा प्रत्येक रेकर्ड को फिल्ड हरूको स्थान बुझाउँछ |
02:17 | अब, हामी while कन्डिसन मा i ३ भन्दा कम छ कि जाँच्ने छौं |
02:23 | यो सही भएकोले awkdemo.txt फाइलको रेकर्ड को f फिल्डको मान प्रिन्ट गर्ने छ |
02:31 | अनि, हामी फिल्ड काउन्टर f लाई १ ले बढाउने छौं |
02:36 | त्यसपछि हामी लूप भेरिएबल i को मान पनि १ ले बढाउने छौं |
02:43 | यो printf ले प्रत्येक पङ्क्तिको अन्त्यमा एउटा न्यूलाइन क्यारेक्टर प्रिन्ट गर्ने छ |
02:49 | यो लूप awkdemo.txt फाइलको सम्पूर्ण रेकर्डहरूको लागि एक्जिक्युट हुनेछ |
02:55 | जसको मतलब, प्रत्येक रेकर्डको लागि पहिलो ३ फिल्डहरू प्रिन्ट हुने छन् |
03:00 | अब यो कोड एक्जिक्युट गरौं |
03:03 | टर्मिनल खोल्न Ctrl, Alt र T किहरू थिचौं |
03:09 | cd कमाण्ड प्रयोग गरी Code Files लिंकबाट डाउनलोड गरेको फाइल रहेको फोल्डरमा जाऊ |
03:16 | अब टाइप गरौं: awk स्पेस हाइफन् सानो f स्पेस while_loop.awk स्पेस awkdemo.txt
एन्टर थिचौं |
03:29 | हामीले आउटपुटमा सम्पूर्ण पङ्क्तिहरूको पहिलो तीन फिल्डहरू देख्ने छौं |
03:35 | अब do-while लूप प्रयोग गरी सोही कार्य गरौं |
03:38 | do-while लूप को सिन्ट्याक्स यहाँ देख्न सकिन्छ |
03:42 | do-while लूप ले सधैँ बडी भित्र रहेको कोड एकपटक एक्जिक्युट गर्ने छ |
03:47 | अनि, दिएको कन्डिसन जाँच्ने छ, दिएको कन्डिसन सही भएसम्म बडी भित्रको कोड दोहोराउने छ |
03:56 | मैले पहिले नै do_loop.awk मा एउटा स्क्रिप्ट लेखेकी छु
सो फाइल Code Files लिंकमा पनि उपलब्ध छ |
04:06 | यो कोडमा do लूप भित्र स्टेटमेन्ट हरू छन् जो पहिले नै एक्जिक्युट हुन्छन्
यो जाँचिने कन्डिसन हो |
04:15 | त्यसपछि कन्डिसन सही भएसम्म लूप भित्रका स्टेटमेन्टहरू एक्जिक्युट हुने छन् |
04:23 | यो लूप awkdemo.txt फाइलको सम्पूर्ण रेकर्डहरूको लागि दोहोरिने छन्
जसको मतलब, सम्पूर्ण रेकर्डहरूको पहिलो ३ फिल्डहरू प्रिन्ट हुने छन् |
04:33 | अब, टर्मिनल मा जाऊ, म टर्मिनल क्लियर गर्ने छु |
04:38 | अब, टाइप गरौं: awk स्पेस हाइफन् सानो f स्पेस do अन्डरस्कोर loop डट awk स्पेस awkdemo डट txt
एन्टर थिचौं |
04:52 | हामीले एकै आउटपुट प्राप्त गर्छौं, त्यसो भए हामीसँग किन दुई भिन्न while र do-while लूपहरू छन् त? |
04:58 | अब भिन्नता बुझौं |
05:00 | while अन्डरस्कोर loop डट awk फाइलमा जाऊ |
05:05 | अब, loop काउन्टर i को मान 1 बाट 4 मा बदलौं |
05:11 | यसले दिएको कन्डिसन सुरुबाटै गलत हुन्छ
यसको मतलब, हामीले आउटपुटमा केही पनि पाउनु हुँदैन |
05:19 | फाइल सेभ गरौं र टर्मिनल मा जाऊ |
05:22 | टर्मिनल क्लियर गरौं
अब, while loop एक्जिक्युट गर्ने कमाण्ड प्राप्त नभएसम्म अप एरो कि थिचौं |
05:30 | अब, एन्टर थिचौं |
05:32 | हामीले आउटपुटमा खाली लाइनहरू मात्र प्राप्त गरेको देख्छौं |
05:37 | awkdemo.txt फाइलको प्रत्येक रेकर्डको लागि आउटपुटमा एउटा खाली लाइन प्रिन्ट भएको छ |
05:44 | अब, do loop फाइलमा केही परिवर्तन गरौं |
05:48 | अब, do अन्डरस्कोर loop डट awk फाइलमा जाऊ |
05:53 | अब i को मान 1 बाट 4 मा बदलौं |
05:57 | फाइल सेभ गरौं र टर्मिनल मा जाऊ |
06:01 | टर्मिनल क्लियर गरौं
अब, do loop को कमाण्ड प्राप्त नभएसम्म अप एरो कि थिचौं एन्टर थिचौं |
06:10 | आउटपुटमा, प्रत्येक पङ्क्तिको पहिलो फिल्ड मात्र प्रिन्ट भएको छ
यो किन भयो होला? |
06:16 | प्रत्येक पंक्तिको लागि, awk ले पहिले पहिलो फिल्ड को मान प्रिन्ट गर्ने छ किनभने भेरिएबल f को सुरुको मान 1 छ
अनि मात्र कन्डिसन जाँच्ने छ |
06:28 | लूप काउन्टर i को मान 4 भएकोले कन्डिसन गलत भएको छ
त्यसैले, त्यो रेकर्डको लागि लूप त्यही अन्त्य हुन्छ |
06:39 | यो लूप awkdemo.txt फाइलको सम्पूर्ण रेकर्डहरूको लागि दोहोरिन्छ |
06:44 | जसको मतलब, प्रत्येक रेकर्ड को पहिलो फिल्ड प्रिन्ट हुनेछ |
06:49 | हामीले कम्तिमा पनि एउटा रेकर्डको एउटा आउटपुट प्राप्त गरेका छौं |
06:53 | कन्डिसन जे भएपनि कुनै पनि कार्यलाई कम्तिमा एकपटक एक्जिक्युट गर्नुपरेमा do-while loop प्रयोग गर्नुहोस् |
07:01 | हामी for लूप प्रयोग गरेर पनि यस्तो गर्न सक्छौं |
07:05 | यहाँ, for लूप को सिन्ट्याक्स रहेको छ |
07:09 | 'for' स्टेटमेन्ट, सुरुको मान बाट एक्जिक्युट हुन सुरु हुन्छ |
07:14 | अनि, कन्डिसन सही भएसम्म, यस भित्रका स्टेटमेन्टहरू दोहोरिएर एक्जिक्युट हुने छन् र मान बढ्ने छ |
07:23 | म तपाईसँग प्रोग्रामिंग ल्याङ्ग्वेज जस्तै: C वा C++ को ज्ञान रहेको ठान्छु, त्यसैले सिन्ट्याक्सको विस्तृत चर्चा गर्ने छैन |
07:30 | यो कन्डिसन को लागि for लूप यस्तो देखिन्छ |
07:35 | यहां, मान सुरु गर्ने, कन्डिसन र भेरिएबलको मान बढाउने काम सबै एकै लाइनमा गरिन्छ |
07:43 | यो आफैँ गरेर हेर्नुहोस् |
07:46 | हामीसँग अन्य थप लूपिंग कन्स्ट्रक्टहरू रहेका छन्:
break, continue, exit |
07:53 | हामी आगामी ट्युटोरियलहरूमा केही सान्दर्भिक उदाहरणहरू हेर्ने छौं |
07:58 | हामीसँग हाम्रो फाइलमा एक वा एकभन्दा बढि लाइनका कमेन्ट हरू हुन सक्छन् |
08:03 | यहाँ, याद गरौं, एकल लाइन कमेन्टहरू एउटा ह्याश (#) चिन्हले परिभाषित गरिन्छ |
08:10 | एकभन्दा बढि कमेन्टहरू को लागि दोहोरो ह्याश (##) चिन्हको प्रयोग गरिन्छ |
08:16 | अब, कमेन्टहरू जाँच्ने र आउटपुटमा प्रिन्ट गर्नुको कुनै फायदा छैन |
08:22 | हामीले यी ह्याश (##) चिन्हहरूबाट सुरु हुने लाइनहरू छोड्नुपर्छ
हामी यो कसरी गर्न सक्छौं त? |
08:28 | हामीले ८००० भन्दा बढि पाउनेलाई ५०% भत्ता बढाएको उदाहरण सम्झौं |
08:36 | हामी कमेन्टहरू छोड्न सोही उदाहरण प्रयोग गर्ने छौं |
08:40 | मैले एक्जिक्युट गर्न यहाँ देखाए झैं next.awk नामक फाइल सृजना गर्ने छु |
08:47 | अब, यो कमाण्ड को मतलब के हो त? |
08:50 | awk ले प्रत्येक लाइनको सुरुमा क्यारेट चिन्ह र ह्याश चिन्ह (^#) खोज्ने छ |
08:57 | यदि भेटिएमा next किवर्डले awk लाई हालको लाइन तुरुन्तै छोड्न भन्छ |
09:04 | अनि awk ले अर्को लाइनबाट प्रोसेस गर्न सुरु गर्छ
यसले प्रोसेस गर्ने समय बचाउँछ |
09:12 | टर्मिनल मा जाऊ र देखाएको कमाण्ड टाइप गरौं
एन्टर थिचौं |
09:20 | हामीले कुनैपनि कमेन्टहरू विनाको आउटपुट प्राप्त गरेका छौं |
09:24 | मानौं, हामीसँग बिद्ध्यार्थीहरूको रेकर्ड एकभन्दा बढि फाइलहरूमा एकै फर्म्याटमा रहेको छ
मानौं, awkdemo_mod.txt र awkdemo2.txt मा |
09:37 | यो हाम्रो अघिल्लो फाइल जस्तै रहेको हेरौं |
09:41 | यसमा पनि ह्याश चिन्ह सहित सुरु हुने कमेन्टहरू रहेका छन् |
09:45 | र, यसको अन्त्यमा दोहोरो ह्याश चिन्ह सहित एकदमै धेरै टेक्स्टहरू रहेका छन् |
09:50 | अब, हाम्रो डेटा दुई भिन्न फाइलहरूमा रहेको छ
awk ले बिद्यार्थीहरूको भत्ता बढाउन दुवै फाइलहरू प्रोसेस गर्नुपर्छ |
09:59 | हामीले पहिलो फाइलमा दोहोरो ह्याश(##) चिन्ह सहितको लाइन भेटेपछि, awk ले त्यो फाइल प्रोसेस गर्न रोक्नुपर्छ |
10:06 | त्यसपछि, यसले अर्को फाइल एक्जिक्युट गर्नुपर्छ
यसरी प्रोसेस गर्ने समय बच्ने छ |
10:13 | यहाँ देखाए झैँ next.awk परिमार्जन गरौं |
10:17 | मैले BEGIN स्टेटमेन्ट तल यो थपेकी छु: डलर जिरो टिल्डे स्ल्याश क्यारेट चिन्ह दोहोरो ह्याश स्ल्यास ब्राकेट भित्र nextfile सेमिकोलन |
10:29 | यसले प्रत्येक लाइनको सुरुमा दोहोरो ह्याश # चिन्ह खोज्ने छ |
10:34 | यदि भेटिएमा, awk ले हालको फाइल छोडेर अर्को फाइल एक्जिक्युट गर्ने छ |
10:39 | यो फाइल सेभ गरौं |
10:41 | टर्मिनल मा जाऊ र तलको कमाण्ड टाइप गरौं
एन्टर थिचौं |
10:48 | हामीले दुवै फाइलहरूबाट आउटपुट प्राप्त गरेका छौं |
10:53 | यसरी हामी यो ट्युटोरियलको अन्त्यमा आएका छौं
सङ्क्षेपमा हेरौं |
10:58 | यो ट्युटोरियलमा हामीले awk मा यी लूपहरू सिक्यौं - while, do… while, for, next, र nextfile |
11:06 | कार्यको रूपमा - awkdemo2.txt फाइलको बिद्ध्यार्थीहरूको रेकर्डबाट इन्पुट फाइल को फिल्डहरू को संख्या जतिसुकै भएपनि यसका जोड फिल्डहरू (जस्तै: फिल्ड 2, फिल्ड 4 आदि) मात्र प्रिन्ट गर्नुहोस् |
11:22 | तलको लिङ्कमा उपलब्ध भिडियोले स्पोकन ट्युटोरियल प्रोजेक्टको सार दिन्छ
कृपया यसलाई डाउनलोड गरी हेर्नुहोला |
11:30 | स्पोकन ट्युटोरियल प्रोजेक्ट टिमले स्पोकन ट्युटोरियल प्रयोग गरी कार्यशालाहरू सन्चालन गर्छ
र अनलाइन टेस्ट पास गर्नेलाई प्रमाणपत्र प्रदान गर्छ विस्तृत जानकारीको लागि हामीलाई सम्पर्क गर्नुहोस् |
11:43 | के तपाईसँग यो ट्युटोरियलको बारेमा कुनै जिज्ञासा छ ?
कृपया यो साइट हेर्नुहोला |
11:49 | स्पोकन ट्युटोरियल प्रोजेक्टलाई NMEICT, MHRD, भारत सरकारको अनुदान रहेको छ
यो मिसन सम्बन्धि थप जानकारी तलको लिंकमा उपलब्ध छ |
12:01 | यो ट्युटोरियलमा स्पोकन ट्युटोरियल प्रोजेक्ट टिमको योगदान रहेको छ
आइआइटि बम्बेको तर्फबाट म मन्दिरा बिदा हुँदै छु, सहभागिताको लागि धन्यवाद, नमस्कार |