Linux-AWK/C2/Built-in-Functions-in-awk/Nepali
|
|
00:01 | नमस्कार! awk मा बिल्ट-इन् फंक्सनहरू स्पोकन ट्युटोरियलमा तपाईलाई स्वागत छ |
00:07 | यो ट्युटोरियलमा, हामी विभिन्न प्रकारका बिल्ट-इन् फंक्सनहरू सिक्ने छौं जस्तै -
अंकगणितीय फंक्सन हरू , |
00:15 | स्ट्रिंग फंक्सन हरू , |
00:17 | इन्पुट/आउटपुट फंक्सनहरू र
टाइम- स्ट्याम्प फंक्सन हरू |
00:23 | यसको लागि हामी केहि उदाहरणहरू प्रयोग गर्ने छौं |
00:26 | यो ट्युटोरियल रेकर्ड गर्न, म प्रयोग गर्दै छु : उबुन्टु लिनक्स १६. ०४ अपरेटिंग सिस्टम र
gedit टेक्स्ट एडिटर ३. २०.१ |
00:38 | तपाई आफ्नो रोजाइको कुनै पनि टेक्स्ट एडिटर प्रयोग गर्न सक्नुहुन्छ |
00:42 | यो ट्युटोरियल अभ्यास गर्न, तपाईले यो वेबसाइटका अघिल्ला awk ट्युटोरियल हरू हेर्नुपर्ने हुन्छ |
00:49 | तपाईसँग प्रोग्रामिङ्ग ल्याङ्ग्वेजहरू जस्तै C वा C++ को ज्ञान हुनुपर्छ |
00:56 | यदि छैन भने, यो वेबसाइटमा रहेको सम्बन्धित ट्युटोरियलहरू हेर्नुहोला |
01:02 | यो ट्युटोरियलमा प्रयोग गरिएका फाइलहरू यो ट्युटोरियल पेजको Code Files लिंकमा उपलब्ध छ
कृपया तिनीहरूलाई डाउनलोड गरी एक्सट्रयाक्ट गर्नुहोला |
01:12 | awk का बिल्ट-इन् फंक्सनहरू लाई सधैँ कल गर्न सकिन्छ |
01:17 | अब केहि अंकगणितीय फंक्सनहरूको बारेमा हेरौं
स्क्वाएर रुट फंक्सन (sqrt (x)) ले एउटा नम्बर x को पोजिटिभ स्क्वाएर रुट दिन्छ |
01:27 | int() फंक्सनले कुनै पनि मान x को इन्टिजर मान मात्र दिन्छ |
01:32 | exponential फंक्सन ले x को एक्पोनेनसियल दिन्छ |
01:37 | log फंक्सन ले x को natural logarithm मान दिन्छ |
01:43 | sin र cos ले क्रमश sine(x) र cosine(x) दिन्छ |
01:49 | याद गरौँ, आर्गुमेंट x लाई रेडियन मा दिनुपर्छ |
01:55 | अब यी फंक्सन हरू बुझ्न एउटा उदाहरण हेरौं |
02:00 | मैले पहिले नै कोड लेखेर एउटा फाइल arithmetic अन्डरस्कोर function डट awk मा सेभ गरेकी छु
सोही फाइल Code Files लिंकमा उपलब्ध छ |
02:10 | यहाँ, हामी क्रमश: एउटा पोजिटिभ र नेगेटिभ नम्बरको स्क्वायर रुट प्रिन्ट गर्दै छौं |
02:17 | अर्को, हामी क्रमश: एउटा पोजिटिभ र नेगेटिभ नम्बरको इन्टिजर मान प्रिन्ट गर्दै छौं |
02:24 | त्यसपछि, हामी एउटा सानो नम्बर अनि एउटा ठूलो नम्बरको एक्पोनेनसियल प्रिन्ट गर्दै छौं |
02:31 | त्यसपछि, पोजिटिभ र नेगेटिभ नम्बरहरूको natural logarithm प्रिन्ट हुने छ |
02:38 | हामी 0.52 रेडीयन मतलब ३० डिग्री, को sine र cosine मानहरू प्रिन्ट गर्ने छौं
अब फाइल टर्मिनल मा एक्जिक्युट गरौं |
02:50 | टर्मिनल खोल्न Ctrl, Alt र T किहरू एकैसाथ थिचौं |
02:55 | अब, cd कमाण्ड प्रयोग गरी हामीले फाइल डाउनलोड गरेको फोल्डरमा जाऊ |
03:03 | अब, टाइप गरौं : awk स्पेस -f स्पेस arithmetic_function.awk
आउटपुट हेर्न एन्टर थिचौं |
03:14 | यो आउटपुटबाट यी कुराहरू प्रष्ट हुन्छ |
03:18 | sqrt() फंक्सन ले एउटा पोजिटिभ नम्बरको स्क्वायर रुट दिन्छ |
03:23 | यसले नेगेटिभ नम्बर भएमा nan वा not a number देखाउँछ |
03:29 | int() फंक्सन ले पोजिटिभ वा नेगेटिभ दुवै नम्बरको इन्टिजर दिन्छ |
03:36 | exp() फंक्सन ले कुनै पनि नम्बरको एक्स्पोनेनसियल दिन्छ
यदि नम्बर एकदमै ठूलो भएमा फंक्सन ले inf दिन्छ |
03:47 | log() फंक्सन ले पोजिटिभ नम्बरको natural logarithm दिन्छ |
03:53 | यदि नम्बर नेगेटिभ भएमा, यो फंक्सन ले nan दिन्छ |
03:58 | Sine र cosine फंक्सन हरूले सम्बन्धित मानहरू दिने छ
तपाई आफ्नो क्यालकुलेटर प्रयोग गरी मानहरू पक्का गर्न सक्नुहुन्छ |
04:07 | अब, random फंक्सन हरूको बारेमा हेरौं |
04:11 | rand() फंक्सन ले 0 देखि 1 सम्मको कुनै पनि नम्बरहरू दिन्छ तर कहिल्यै पनि 0 वा 1 दिंदैन |
04:21 | दिएको नम्बरहरू प्रत्येक पटक awk एक्जिक्युट हुँदा भिन्न हुन्छ |
04:27 | तर, धेरै पटक awk प्रोग्राम एक्जिक्युट हुने क्रममा यसको अनुमान गर्न सकिन्छ |
04:33 | srand(x) फंक्सन ले random फंक्सन को seed मान x दिन्छ |
04:39 | x नभएको खण्डमा, मिति र समय, seed मान को रूपमा प्रयोग गरिन्छ
अब, एउटा उदाहरण सहित बुझौं |
04:49 | मैले पहिले नै random फंक्सन को लागि एउटा कोड लेखेर यसलाई random.awk मा सेभ गरेकी छु |
04:56 | यहाँ, for लूप भित्र को rand() फंक्सन ले 0 र 1 बीचको कुनै पनि नम्बर दिन्छ |
05:04 | अनि, उक्त नम्बरलाई 50 ले गुणा गरी प्रिन्ट गरिन्छ |
05:10 | त्यसैले, यो कोडले ५० भित्रको कुनै पनि ५ नम्बरहरू दिन्छ |
05:16 | टर्मिनल मा जाऊ र फाइल एक्जिक्युट गरौं
अब, टर्मिनल क्लियर गरौं |
05:23 | टाइप गरौं : awk स्पेस हाइफन f स्पेस random डट awk र एन्टर थिचौं |
05:31 | हामी यसले ५ नम्बरहरू दिएको देख्छौं |
05:35 | यदि, मैले कोड पुन: एक्जिक्युट गरेमा के हुन्छ त ? |
05:39 | अघिल्लो कमाण्ड प्राप्त गर्न अप एरो कि थिचौं र एन्टर थिचौं |
05:47 | हामीले सोही आउटपुट प्राप्त गर्यौं, यसको मतलब awk ले प्रत्येक पटक स्क्रिप्ट एक्जिक्युट गर्दा एकै नम्बरहरूको सेट दिन्छ |
05:57 | त्यसोभए, हामी कसरी प्रत्येक पटक एक्जिक्युट गर्दा नयाँ नम्बरहरू को सेट प्राप्त गर्न सक्छौं त?
पुन: कोडमा फर्कौं |
06:06 | for लूप अगाडी srand() फंक्सन टाइप गरौं |
06:11 | फाइल सेभ गर्न Ctrl र S किहरू थिचौं |
06:16 | अब, टर्मिनल मा जाऊ |
06:19 | अघिल्लो पटक एक्जिक्युट गरेको कोड प्राप्त गर्न अप एरो कि थिचौं र एन्टर थिचौं |
06:27 | यसले अहिले एउटा भिन्न नम्बरहरूको सेट दिएको छ |
06:31 | यसरी, हामी आर्गुमेंट विनाको srand फंक्सन प्रयोग गरी एउटा भिन्न नम्बरहरू को सेट प्राप्त गर्न सक्छौं |
06:40 | अब, हामी केहि स्ट्रिंग फंक्सनहरू हेर्ने छौं
length() फंक्सन ले दिएको स्ट्रिंग s को लम्बाई दिन्छ |
06:49 | index() फंक्सन ले एउटा ठूलो स्ट्रिंग s1 भित्रको स्ट्रिंग s2 ko स्थान दिन्छ |
06:57 | उदाहरणको लागि - index ब्राकेट भित्र दोहोरो उद्दरणमा linux कमा दोहोरो उद्दरणमा n ले 3 दिन्छ
अब, एउटा उदाहरण हेरौं |
07:10 | awkdemo.txt फाइल खोलौं |
07:14 | हामीलाई थाहा छ कि awkdemo.txt फाइलमा बिद्यार्थीहरूको रोल नम्बर ४ डिजिटको रहेको छ |
07:21 | गलत टाइप गर्नाले, रोल नम्बरहरूमा गलत डिजिटहरू हुन सक्छन्
हामी यसलाई awk कमाण्डहरू प्रयोग गरी सजिलै पत्ता लगाउन सक्छौं |
07:30 | टर्मिनल मा जाऊ र टर्मिनल क्लियर गरौं |
07:36 | अब, यहाँ देखाइएको कमाण्ड टाइप गरौं
यहाँ, हामी पहिलो फिल्डको लम्बाई बराबर ४ छ कि छैन जाँच्ने छौं |
07:46 | यो गलत भएमा, त्यो रेकर्ड प्रिन्ट हुने छ
एन्टर थिचौं |
07:53 | यहाँ, एउटा रोल नम्बर S02 गलत टाइप भएको छ |
08:00 | यसमा तीनवटा मात्र डिजिट छन् भने अन्य सबैमा चार डिजिट छन् |
08:07 | substr(s,a,b) फंक्सनले एउटा ठूलो स्ट्रिंग बाट एउटा सब-स्ट्रिंग एक्सट्रयाक्ट गर्छ |
08:14 | म प्यारामिटर हरूको चर्चा गर्छु |
08:17 | यहाँ, s एउटा स्ट्रिंग हो |
08:20 | a ले s बाट एक्सट्रयाक्ट गर्न सुरु गर्ने स्थान जनाउँछ |
08:26 | b ले एक्सट्रयाक्ट गर्नुपर्ने क्यारेक्टरहरूको संख्या जनाउँछ
अब, एउटा उदाहरण हेरौं |
08:33 | awkdemo.txtफाइलमा जाऊ |
08:37 | यहाँ, रोल नम्बरको पहिलो अक्षरले बिद्यार्थी बस्ने Hostel code जनाउँछ |
08:46 | मानौं, हामी होस्टेल A मा बस्ने बिद्यार्थीहरूको सूची निकाल्न चाहन्छौं |
08:52 | यसको लागि, टर्मिनल मा जाऊ |
08:56 | यहाँ, देखाइएको कमाण्ड टाइप गरौं |
09:00 | यहाँ, हामी $1 ले जनाउने स्ट्रिंग लाई हेरौं |
09:05 | हामीलाई थाहा छ कि $1 ले पहिलो फिल्ड जनाउँछ जुन हाम्रो लागि रोल नम्बर हो |
09:12 | अर्को, हामी वान बाट, लम्बाई वान भएको सब-स्ट्रिंग निकाल्ने छौं |
09:19 | अनि, यदि यो क्यापिटल A बराबर भएमा फाइलको त्यो रेकर्ड प्रिन्ट हुने छ
आउटपुट हेर्न एन्टर थिचौं |
09:29 | हामीले होस्टेल A मा भएका बिद्यार्थीहरूको सूची पाएका छौं |
09:34 | हामीले पहिले फंक्सन split() हेरेका थियौं
त्यसैले, यहाँ म यसको चर्चा गर्ने छैन |
09:40 | कृपया, कुनै समस्या भएमा अघिल्ला awk ट्युटोरियलहरू हेर्नुहोस् |
09:45 | हामीसँग इन्पुट/आउटपुट सम्बन्धित केहि फंक्सनहरू रहेका छन्
system() फंक्सन ले हामीलाई awk मा कुनै पनि unix कमाण्ड रन गर्न सघाउँछ |
09:56 | अब, हामी awk कमाण्ड मा unix कमाण्ड date रन गर्ने छौं |
10:01 | टर्मिनल मा यहाँ देखाए झैँ कमाण्ड टाइप गरौं
र एन्टर थिचौं |
10:09 | टर्मिनल मा आजको मिति र समय आउटपुटको रूपमा देखिन्छ |
10:15 | हामीलाई यो किन आवश्यक पर्छ त? हामीले awk कमाण्ड को BEGIN सेक्सन मात्र राख्नुपर्छ |
10:21 | वास्तविक समस्याहरूमा, हामी आउटपुट प्रिन्ट गर्नु अघि सिस्टम डेट प्रिन्ट गर्न चाहन सक्छौं |
10:28 | त्यस्तो अवस्थामा, हामीले awk कमाण्ड मा सिस्टम कमाण्डहरू एक्जिक्युट गर्नुपर्छ |
10:34 | हामीसँग केहि टाइम स्ट्याम्प सम्बन्धित फंक्सनहरू पनि छन् जस्तै -
systime(), strftime() आदि |
10:43 | यी फंक्सनहरु को बारेमा जान्न इन्टरनेट प्रयोग गर्नुहोला |
10:48 | यसरी हामी यो ट्युटोरियलको अन्त्यमा आएका छौं
संक्षेपमा हेरौं |
10:53 | यो ट्युटोरियलमा हामीले विभिन्न प्रकारका बिल्ट-इन् फंक्सनहरू को बारेमा जान्यौं जस्तै -
अंकगणितीय फंक्सनहरू , स्ट्रिंग फंक्सनहरू , इन्पुट/आउटपुट फंक्सनहरू र टाइम स्ट्याम्प फंक्सनहरू |
11:06 | कार्यको रूपमा -
प्रत्येक रेकर्डको अन्तिम फिल्ड प्रिन्ट गर्ने एउटा awk प्रोग्राम लेख्नुहोस् |
11:13 | यसको लागि awkdemo.txt फाइल प्रयोग गर्नुपर्छ र बिद्यार्थीको नामको तेस्रो अक्षर सानो u हुनुपर्छ |
11:22 | तलको लिङ्कमा उपलब्ध भिडियोले स्पोकन ट्युटोरियल प्रोजेक्टको सार दिन्छ
कृपया यसलाई डाउनलोड गरी हेर्नुहोला |
11:30 | स्पोकन ट्युटोरियल प्रोजेक्ट टिमले स्पोकन ट्युटोरियलहरू प्रयोग गरी कार्यशालाहरू सन्चालन गर्छ
र अनलाइन टेस्ट पास प्रमाणपत्र प्रदान गर्छ विस्तृत जानकारीको लागि हामीलाई सम्पर्क गर्नुहोस् |
11:43 | कृपया, जिज्ञासा रहेको स्थानको समय सहित यो फोरममा पोस्ट गर्नुहोला |
11:47 | स्पोकन ट्युटोरियल प्रोजेक्टलाई NMEICT, MHRD, भारत सरकारको अनुदान रहेको छ
यो मिसन सम्बन्धि थप जानकारी तलको लिंकमा उपलब्ध छ |
11:59 | आइआइटि बम्बेको तर्फबाट म मन्दिरा थापा बिदा हुँदै छु, सहभागिताको लागि धन्यवाद, नमस्कार |