Linux-AWK/C2/More-on-Single-Dimensional-Array-in-awk/Sanskrit

From Script | Spoken-Tutorial
Jump to: navigation, search
Time
Narration
00:01 More on single dimensional array in awk इति पाठार्थं भवद्भ्यः स्वागतम् ।
00:07 अस्मिन् पाठे वयं –

awk अरे इतीदं सञ्चिकया सह विनिगोगकरणम्,

00:13 अरे-एलिमेण्ट्स् इत्येतेषां स्केन् करणम् ,
00:16 Delete स्टेट्मेण्ट्,
00:18 ARGV अरे अपि च ENVIRON अरे इत्येतेषां विषयान् ज्ञास्यामः ।
00:22 इदं कैश्चन उदाहरणैः सह कुर्मः ।
00:25 पाठमिदं रेकोर्ड्-कर्तुमहम्  :

Ubuntu Linux 16.04 ओपरेटिङ्ग् सिस्टम् अपि च

gedit टेक्स्ट् एडिटर् 3.20.1 इतीमे उपयुनज्मि ।

00:37 भवतामभीष्टानुसारेण यत्किमपि टेक्स्ट् एडिटर् उपयोक्तुमर्हन्ति भवन्तः ।
00:41 पाठस्यास्य अभ्यासाय , अस्माकं जालपुटे उपलभ्यमानानि array विषयकानि पूर्वतन awk ट्युटोरियल्स् भवद्भिः दृष्टाः स्युः ।
00:48 भवद्भ्यः C अथवा C++ सदृशानां प्रोग्रामिङ्ग्-भाषाणां ज्ञानमावश्यकम् ।
00:55 नास्ति चेत्, अस्माकं जालपुटस्थानि तत्सम्बद्धानि ट्युटोरियल्स् अवलोकयन्तु ।
01:00 अत्रोपयुक्ताः सञ्चिकाः, अस्मिन्नेव पुटे Code Files लिङ्क-मध्ये उपलभ्यन्ते ।

कृपया ताः अवचित्य extract कुर्वन्तु ।

01:10 पूर्वं वयम् awk अरेस् इत्येतेषां कांश्चन विषयान् दृष्टवन्तः ।
01:14 वयमधुना awk array इतीदं सञ्चिकाभिः सह कथमुपयोक्तव्यमिति ज्ञास्यामः ।
01:19 अस्माभिः आदौ उपयुक्ताम् awkdemo.txt सञ्चिकामेव पुनः उपयुञ्ज्महे ।
01:25 अत्र, प्रथमं फील्ड् 'रोल् नम्बर्' अपि च षष्ठं फील्ड् विद्यार्थिनः 'स्टैपण्ड्' वर्तते ।
01:32 आदौ सर्वेषां विद्यार्थिनां HRA इतीदं गणयाम ।
01:36 अत्र, HRA इतीदं, तेषां स्टैपण्ड् इत्यस्य 30% वर्तते ।
01:41 अहं पूर्वमेव कोड् लिखितवानस्मि अपि च तत् calculate_hra.awk इति रक्षितवानस्मि ।

अधुना वयं तां सञ्चिकां पश्याम ।

01:51 BEGIN विभागे, 'फील्ड् सपरेटर्' (field separator) इतीदं Pipe चिह्नेन इनिशियलैस् कृतम् ।
01:57 पश्चात् action विभागे, वयं 'अरे एलिमेण्ट्स्' इतीमानि इनिशियलैस् कुर्मः ।
02:02 इन्पुट्-सञ्चिकायाः प्रत्येकपङ्क्त्यै, विभागमिमम् एकदा एक्सिक्यूट् कुर्मः ।
02:08 अहं “hra” इतीदं, 'अरे वेरियेबल्' इति, अपि च dollar one इतीदं इण्डेक्स् इति च डिक्लेर् कृतवानस्मि ।
02:14 अत्र, dollar 1 प्रथमं फील्ड् इतीदम्, अर्थात् roll number इतीदं सूचयति ।

मूल्यं dollar 6 multiplied by zero point 3' वर्तते । dollar six स्टैपण्ड् मूल्यं वर्तते ।

02:27 अतः, अरे “hra”, इण्डेक्स् roll number मध्ये तत्सम्बद्धं HRA आहरणं मौल्यत्वेन प्राप्तवदस्ति ।
02:35 ‘अरे’ इत्यस्य सर्वाणि एलिमेण्ट्स् कथमस्माभिः स्केन् क्रियते?
02:39 एतादृशं for लूप् भवद्भिः उपयोक्तव्यम् ।
02:43 इदं लूप्, 'अरे' मध्ये प्रत्येकाय इण्डेक्स् इत्यस्मै, एकवारं स्टेट्मेण्ट्स् एक्सिक्यूट् करोति ।
02:48 वेरियेबल् var इतीदं, एकैकशः इण्डेक्स्-मूल्याय सेट् क्रियते ।
02:53 कोड्, END विभागे लिखितमस्ति ।
02:57 awk, इन्पुट् सञ्चिकायाः सर्वाः पङ्क्तीः प्रोसेस् कृत्वा, पश्चात् विभागमिमं एक्सिक्यूट् करोति ।
03:04 वेरियेबल् i इतीदं, प्रत्येकस्मै इण्डेक्स्-मूल्याय अथवा roll number इत्यस्मै, एकैकशः इनिशियलैस् क्रियते ।
03:10 for लूप्-इत्यस्य सर्वेषु आवर्तनेषु (iteration), निर्दिष्टस्य ‘रोल् नम्बर्’ इत्यस्य, hra इतीदं मुद्रापयति ।
03:16 'टर्मिनल्' आगत्य सञ्चिकाम् एक्सिक्यूट् कुर्वन्तु ।

CTRL, ALT अपि च T कीलकानि नुत्त्वा टर्मिनल् उद्घाटयन्तु ।

03:24 cd कमाण्ड् उपयुज्य भवन्तः, Code Files इतीदं डौन्लोड् अपि च extract कृतं फोल्डर् प्रति गच्छन्तु ।
03:31 एवं टङ्कयन्तु : awk space hyphen small f space calculate_hra.awk space awkdemo.txt

Enter नुदन्तु ।

03:45 फलितं, सर्वेषां विद्यार्थिनां ‘रोल् नम्बर्’ तथा HRA च मुद्रापयति ।
03:50 अधुना, ‘रोल् S02’ विद्यमानस्य विद्यार्थिनः रेकोर्ड् मया निष्कासितव्यमिति वदाम ।
03:56 अतः, ‘इण्डेक्स् S02’ मध्ये 'अरे एलिमेण्ट्' निष्कासितव्यम् ।
04:01 अहमिदं calculate_hra.awk कोड् उपयुज्य करोमि ।
04:06 for लूप् इत्यस्यादौ , Enter नुत्त्वा अधस्तन कोड् टङ्कयन्तु ।

delete space hra within square brackets within double quotes S02.

04:19 सञ्चिकां रक्षित्वा 'टर्मिनल्' आगच्छन्तु ।
04:23 अहं टर्मिनल् रिक्तं करोमि ।
04:26 एक्सिक्यूट् कृतानि पूर्वतन कमाण्ड्स् प्राप्तुं , 'अप् एरो' कीलकानि नुदन्तु ।

Enter नुदन्तु च ।

04:33 फलिते, रोल् नम्बर् S02 विद्यमानस्य विद्यार्थिनः रेकोर्ड् न मुद्रापितम् ।
04:39 delete कमाण्ड् उपयुज्य, यत्किमपि 'अरे एलिमेण्ट्' इतीदं निष्कासितुं शक्नुमः ।
04:44 भवद्भिः इण्डेक्स् इत्यनेन सह 'अरे'नाम दातव्यम् ।
04:48 यदि पूर्णम् 'अरे' मया निष्कासितव्यं चेत्?

delete स्टेट्मेण्ट् मध्ये, केवलम् 'अरे' नामकथनेन इदं कर्तुं शक्नुमः ।

04:56 इदं कर्तुं कोड् प्रति गच्छाम ।
04:59 delete स्टेट्मेण्ट्-द्वारा, कोट्स् अपि च स्क्वेर्-ब्रेकेट्स् इत्यनयोः सह इण्डेक्स् S02 इतीदं निष्कासयन्तु ।
05:07 सञ्चिकां रक्षित्वा टर्मिनल् आगच्छन्तु ।
05:10 टर्मिनल् रिक्तं कुर्वन्तु । पूर्वतन एक्सिक्यूट्-कृतानि कमाण्ड्स् प्राप्तुं , 'अप् एरो' कीलकं नुत्त्वा Enter नुदन्तु ।
05:19 पश्यतां यत्, वयं यत्किमपि फलितं न प्राप्नुमः । पूर्णं 'अरे' इतीदं निष्कासितम् ।
05:25 स्मर्यतां यत्, awk built-in variables इति पूर्वतनपाठे,

ARGCइतीदं, ‘कमाण्ड् लैन् आर्ग्युमेण्ट्’ इत्येतेषां सङ्ख्यां सूचयति इत्युक्तमासीत् ।

05:36 ARGV इतीदं, ‘कमाण्ड् लैन् अर्ग्युमेण्ट्’ इतीमानि स्टोर् कर्तुम् एकम् अरे वर्तते ।

वयं तेषां मूल्यानि कथं दर्शयितुं शक्नुमः इति पश्याम ।

05:45 अहं कोड् इतीदम् argc_argv.awk मध्ये लिखितवानस्मि ।

वयं तत् पश्याम ।

05:53 कोड् इतीदं awk BEGIN विभागे लिखितमस्ति ।
05:57 वयमादौ आर्ग्युमेण्ट्-सङ्ख्याम्, अर्थात् 'ARGC इत्यस्य मूल्यं मुद्रापयन्तः स्मः ।
06:03 पश्चात्, for लूप् उपयुज्य, i इत्यस्य मूल्यं 0 तः ARGC-1 पर्यन्तं लूप् कुर्वन्तः स्मः ।
06:11 अपि च index i मध्ये ARGV इतीदं मुद्रापयामः ।

'टर्मिनल्' गत्वा सञ्चिकाम् एक्सिक्यूट् कुर्वन्तु ।

06:19 अधुना 'टर्मिनल्' मध्ये एवं टङ्कयन्तु -

awk space hyphen small f space argc underscore argv dot awk space one space two space three

06:35 अत्र, one two three ‘कमाण्ड् लैन् आर्ग्युमेण्ट्स्’ सन्ति ।

कमाण्ड् एक्सिक्यूट् कर्तुम्, Enter नुदन्तु ।

06:43 वयं number of arguments इतीदं '4 ' इति प्राप्नुमः ।

परन्तु वयं केवलं 3 आर्ग्युमेण्ट्स् दत्तवन्तः इति स्मर्यताम् ।

06:50 वयं सर्वाणि 'आर्ग्युमेण्ट्स्' पश्याम ।

आदिमम् 'आर्ग्युमेण्ट्' अथवा इण्डेक्स् 0 मध्ये विद्यमानम् argv, वस्तुतः awk – कमाण्ड् नाम वर्तते ।

07:02 पश्चात्, अस्माभिः कमाण्ड्-लैन् मध्ये दत्तानि त्रीणि 'आर्ग्युमेण्ट्स्' सन्ति ।
07:07 अतः, सर्वदा ARGC मूल्यं, दत्तानां ‘कमाण्ड् लैन् अर्ग्युमेण्ट्स्’ इत्येतेषां सङ्ख्यापेक्षया एकम् अधिकं वर्तते ।
07:16 अन्यमेकम् उदाहरणं पश्याम ।

बिल्ट्-इन्-वेरियेबल् ENVIRON , एन्विरोन्मेण्ट् (environment) वेरियेबल् इत्येतेषां एकम् असोसियेटिव् अरे वर्तते ।

07:24 अरे-एलिमेण्ट्-इण्डेक्स् इत्येतानि, एन्विरोन्मेण्ट् वेरियेबल् इत्येतेषां नामानि सन्ति । 'अरे एलिमेण्ट्' मूल्यानि, तेषां एन्विरोन्मेण्ट् वेरियेबल् इत्येतेषां मूल्यानि सन्ति ।
07:35 नाना एन्विरोन्मेण्ट्-वेरियेबल् इत्येतेषां मूल्यानि वयं कथं दृष्टुं शक्नुमः इति ज्ञास्यामः
07:40 आदौ, वयं username इतीदं मुद्रापयामः ।
07:43 एन्विरोन्मेण्ट्-वेरियेबल् USER मूल्यं मुद्रापितव्यम् ।
07:48 'कमाण्ड् प्रोम्प्ट्' मध्ये एवं टङ्कयित्वा
07:53 Enter नुदन्तु ।
07:55 लोग्-इन् कृतस्य उपयोक्तुः नाम फलिते दृश्यते ।
08:00 अनेन वयं पाठस्यान्तमागतवन्तः ।

सङ्क्षेपेण,

08:05 पाठेऽस्मिन् वयम् -

awk अरे इत्यस्य सञ्चिकया सह विनियोगः ,

08:11 अरे-एलिमेण्ट्स्-स्केन्-करणम्,
08:14 Delete स्टेट्मेण्ट्,

ARGV अरे आपि च ENVIRON अरे, इत्येतेषां ज्ञानं प्राप्तवन्तः ।

08:20 एकं पाठनियोजनम्-

उत्तीर्णानां विद्यार्थिनां व्ययदानं गणयन्तु ।

08:25 ‘पेपर् प्रेसेण्टेशन्’ व्ययदानम् – इतीदं स्टैपण्ड् इत्यस्य 80%,
08:30 Performance incentive - इतीदं स्टैपण्ड् इत्यस्य 20% च वर्तेते ।
08:35 इमे व्ययदाने द्वे 'अरे' मध्ये स्टोर्-कुर्वन्तु ।
08:38 प्रति-व्यवदानस्य आहरणमूल्यं माध्यं(average) च मुद्रापयन्तु ।
08:43 awk प्रोग्राम्-द्वारा, एन्विरोन्मेण्ट्-वेरियेबल् PATH इत्यस्य मूल्यं मुद्रापयन्तु ।
08:48 पर्चन्याम् विद्यमानं विडियो, “spoken tutorial” प्रकल्पस्य सारं दर्शयति । तदवचित्य पश्यन्तु ।
08:56 “spoken tutorial” प्रकल्पगणः, इमान् पाठान् उपयुज्य कार्यशालां चालयति । उत्तीर्णेभ्यः प्रमाणपत्रं ददाति ।
09:05 अधिकविवरणार्थम् अस्मभ्यं लिखन्तु ।
09:08 भवतां प्रश्नान् मिनिट् सेकेण्ड् इत्यनयोः सह फोरं मध्ये लिखन्तु ।
09:12 "Spoken Tutorial" प्रकल्पः, NMEICT, MHRD द्वारा भारतसर्वकारस्य अनुदानं प्राप्तवान् अस्ति । अधिकविवरणं अस्यां पर्चन्याम् उपलभ्यते ।
09:24 पाठस्यास्य अनुवादकः प्रवाचकश्च श्री नवीनभट्टः उप्पिनपट्टणम् । धन्यवादाः ।

Contributors and Content Editors

NaveenBhat, Sandhya.np14