Linux-AWK/C2/Built-in-Functions-in-awk/Malayalam

From Script | Spoken-Tutorial
Revision as of 12:15, 28 June 2019 by Vijinair (Talk | contribs)

Jump to: navigation, search
Time
Narration


00:01 ഹലോ, awk. എന്നതിലെ built-in functions എന്നതിനെ കുറിച്ചുള്ള ഈ സ്പോക്കൺ ട്യൂട്ടോറിയലിലേക്ക് സ്വാഗതം.
00:07 ഈ ട്യൂട്ടോറിയലിൽ താഴെ പറയുന്ന വ്യത്യസ്ത തരത്തിലുള്ളbuilt-in functionsളെക്കുറിച്ച്' പഠിയ്ക്കുന്ന

Arithmetic functions

00:15 String functions
00:17 Input/Output functions Time-stamp functions
00:23 ചില ഉദാഹരണങ്ങളിലൂടെ നമ്മൾ ഇത് ചെയ്യും.
00:26 ഈ ട്യൂട്ടോറിയൽ റെക്കോർഡുചെയ്യാൻ, ഞാൻ Ubuntu Linux 16 .04 ഓപ്പറേറ്റിംഗ് സിസ്റ്റം

gedit text editor 3.20.1 എന്നിവ ഉപയോഗിക്കുന്നു

00:38 നിങ്ങൾക്ക് ഇഷ്ടമുള്ള ഏത് ടെക്സ്റ്റ് എഡിറ്ററും ഉപയോഗിക്കാം.
00: 42 ഈ ട്യൂട്ടോറിയൽ‌ അഭ്യസിക്കുന്നതിന്, നിങ്ങൾ‌ ഈ വെബ്‌സൈറ്റിലെ മുമ്പത്തെ 'awk' 'ട്യൂട്ടോറിയലുകളിലൂടെ കടന്നുപോയിരിക്കണം.
00:49 C അല്ലെങ്കിൽ C++.പോലുള്ള ഏതെങ്കിലും പ്രോഗ്രാമിംഗ് ലാങ്‌അജ്‌ നെ ക്കുറിച്ചു നിങ്ങൾക്ക് അറിഞ്ഞിരിക്കണം .
00:56 ഇല്ലെങ്കിൽ, ദയവായി ഞങ്ങളുടെ വെബ്‌സൈറ്റിലെ ബന്ധപ്പെട്ട ട്യൂട്ടോറിയലുകളിലൂടെ കടന്നു പോകുക.
01:02 ഈ ട്യൂട്ടോറിയലിൽ ഉപയോഗിച്ചിരിക്കുന്ന ഫയലുകൾ ഈ ട്യൂട്ടോറിയൽ പേജിലെ Code Files'ലിങ്കിൽ ലഭ്യമാണ്.

അവ ഡൌൺലോഡ് ചെയ്ത് എക്‌സ്‌ട്രാക്റ്റുചെയ്യുക.

01:12 Built-in functionsഎല്ലായ്പ്പോഴും 'awk' ൽ ലഭ്യമാണ്.
01:17 ആദ്യം നമ്മൾ arithmetic functions.ക്കുറിച്ച് പഠിക്കും.

square root function (sqrt (x)) x നമ്പർ ന്റെ പോസിറ്റീവ് square root നൽകുന്നു

01:27 'int' ഫംഗ്ഷൻ 'x' നെ ഒരു പൂർണ സംഖ്യ യിലേക്ക് മാറ്റുന്നു .
01:32 exponential function x 'ന്റെ എക്‌സ്‌പോണൻഷ്യൽ നൽകുന്നു.
01:37 log function 'x' ന്റെ നാച്ചുറൽ ലോഗരിതം നൽകുന്നു.
01:43 sin ഉം cos ഉം sine(x) cosine(x) എന്നിവ നൽകുന്നു
01:49 argument x റേഡിയൻസിൽ പരാമർശിക്കേണ്ടതുണ്ട്.
01:55 functions.മനസിലാക്കാൻ ഒരു ഉദാഹരണം നോക്കാം.
02:00 ഞാൻ ഇതിനകം തന്നെ arithmetic underscore function dot awk ഫയലിൽ കോഡ് എഴുതിയിട്ടുണ്ട്.

ഇത്Code Filesലിങ്കിൽ ലഭ്യമാണ്.

02:10 ഇവിടെ, ഞങ്ങൾ യഥാക്രമം പോസിറ്റീവ്, നെഗറ്റീവ് സംഖ്യകളുടെ square root അച്ചടിക്കുന്നു.
02:17 അടുത്തതായി ഞങ്ങൾ യഥാക്രമം പോസിറ്റീവ്, നെഗറ്റീവ് സംഖ്യകൾക്കായി പൂർണ സംഖ്യ മൂല്യം അച്ചടിക്കുന്നു.
02:24 ഒരു ചെറിയ സംഖ്യയുടെയും വളരെ വലിയ സംഖ്യയുടെയും എക്‌സ്‌പോണൻഷ്യൽ നമ്മൾ അച്ചടിക്കുന്നു.
02:31 അതിനുശേഷം, നാച്ചുറൽ logarithm പോസിറ്റീവ് ആണ്, കൂടാതെ നെഗറ്റീവ് സംഖ്യകൾ പ്രിന്റ് ചെയുകയും ചെയ്യുന്നു.
02:38 0.52 radian ന്റെ sine cosine മൂല്യങ്ങൾ അച്ചടിക്കുന്നു, അത് ' '30 degree.

നമുക്ക് ഫയൽ ടെർമിനലിൽ എക്സിക്യൂട്ട് ചെയ്യാം.

02:50 Ctrl, Alt, T കീകൾ അമർത്തി ടെർമിനൽ തുറക്കുക.
02:55 നിങ്ങൾ cd 'കമാൻഡ് ഉപയോഗിച്ച് ഫയൽ ഡൗൺലോഡ് ചെയ്ത് എക്‌സ്‌ട്രാക്റ്റുചെയ്‌ത ഫോൾഡറിലേക്ക് പോകുക.
03: 03 'awk space -f space arithmetic_function.awk' എന്ന് ടൈപ്പുചെയ്യുക.

ഔട്ട്പുട്ട് കാണുന്നതിന് 'Enter' അമർത്തുക.

03:14 ഈ ഔട്ട്പുട്ട് ൽ നിന്നും ചില കാര്യങ്ങൾ വ്യ്കതമാണ് .
03:18 sqrt() function ഒരു പോസിറ്റീവ് സംഖ്യയുടെ സ്‌ക്വയർ റൂട്ട് നൽകുന്നു.
03:23 നമ്പർ നെഗറ്റീവ് ആണെങ്കിൽ ഇത് ' nan അല്ലെങ്കിൽ not a number'നൽകുന്നു.
03:29 int ഏതെങ്കിലും പോസിറ്റീവ് അല്ലെങ്കിൽ നെഗറ്റീവ് സംഖ്യയുടെ വിഭജിച്ച പൂർണ സംഖ്യ നൽകുന്നു.
03:36 'exp') ഒരു സംഖ്യയുടെ എക്‌സ്‌പോണൻഷ്യൽ പവർ നൽകുന്നു

സംഖ്യ വളരെ വലുതാണെങ്കിൽ, function inf 'നൽകും

03:47 നാച്ചുറൽ logarithm ഒരു പോസിറ്റീവ് സംഖ്യയാണ്log() function.
03:53 നമ്പർ നെഗറ്റീവ് ആണെങ്കിൽ, function nan. നൽകുന്നു.
03:58 'Sine cosine functions ബന്ധപ്പെട്ടേയ് മൂല്യങ്ങൾ നൽകുന്നു

നിങ്ങൾക്ക് കാൽക്കുലേറ്റർ ഉപയോഗിച്ച് നിങ്ങളുടെ മൂല്യം പരിശോധിക്കാൻ കഴിയും.

04:07 ഇപ്പോൾ നമുക്ക് random functions.നോക്കാം.
04:11 rand() 0 നും 1 നും ഇടയിലുള്ള ഏതെങ്കിലും റാൻഡം നമ്പർ നൽകുന്നു. പക്ഷേ 0 അല്ലെങ്കിൽ 1 കിട്ടില്ല
04: 21 ഒരു awk എക്സിക്യൂഷനിൽ‌ ജനറേറ്റുചെയ്‌ത നമ്പറുകൾ‌ ക്രമരഹിതമായിരിക്കും.
04:27 എന്നാൽ 'awk' പ്രോഗ്രാമിന്റെ വിവിധ എക്സിക്യൂഷനുകൾ പ്രവചിക്കാവുന്നതാണ്.
04: 33 random function.നായി seed value x കൊടുക്കാൻ srand(x) ഉപയോഗിക്കുന്നു.


04:39 'X' ഇല്ല എങ്കിൽ seed value. ആയി തിയതിയും ആ ദിവസത്തെ സമയവും ഉപയോഗിക്കുന്നു.

ഒരു ഉദാഹരണത്തിലൂടെ നമുക്ക് ഇവ മനസ്സിലാക്കാം.

04:49 ഞാൻrandom function നായി ഒരു കോഡ് എഴുതി അതിനെ' random.awk 'ആയി സേവ് ചെയ്തു .
04:56 ഇവിടെ, for loop, rand() function ' 0 നും 1 നും ഇടയിൽ ഒരു റാൻഡം നമ്പർ സൃഷ്ടിക്കും.
05:04 കിട്ടിയ സംഖ്യ 50 കൊണ്ട് ഗുണിച്ച് അത് പ്രിന്റ് ചെയ്യും .
05:10 അതിനാൽ, ഈ കോഡ് 50 നുള്ളിൽ 5 റാൻഡം നമ്പറുകൾ സൃഷ്ടിക്കും.
05: 16 terminal ലേക്ക് പോയി ഫയൽ എക്സിക്യൂട്ട് ചെയ്യുക.

ഞാൻ 'ടെർമിനൽ' ക്ലിയർ ചെയ്യട്ടെ.

05:23 ടൈപ്പ് ചെയ്യുക: 'awk space hyphen f space random dot awk' 'Enter ' അമർത്തുക.
05:31 നോക്കൂ, ഇത് 5 റാൻഡം നമ്പറുകൾ നൽകുന്നു.
05:35 ഞാൻ കോഡ് വീണ്ടും എക്സിക്യൂട്ട് ചെയ്താൽ എന്ത് സംഭവിക്കും?
05:39 മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് അപ് ആരോ കീ അമർത്തി 'Enter' അമർത്തുക.
05:47 നമുക് അതെ ഔട്ട്പുട്ട് ലഭിക്കുന്നു. ഇതിനർത്ഥം, 'awk' സ്ക്രിപ്റ്റിന്റെ ഓരോ എക്സിക്യൂഷനിലും ഓരോ ക്രമരഹിതമായ സംഖ്യകൾ ലഭിയ്ക്കുന്നു.
05:57 ഓരോ എക്സിക്യൂഷനിലും നമുക്ക് എങ്ങനെ ഒരു പുതിയ റാൻഡം നമ്പറുകൾ ലഭിക്കും?

കോഡിലേക്ക് ഒന്ന് കൂടി മാറുക .

06:06 for loop ന് മുമ്പ്ടൈ പ്പുചെയ്യുക, srand() function.
06:11 ഫയൽ സേവ് ചെയ്യാൻ Crtl, S എന്നീ കീകൾ അമർത്തുക.
06:16 ഇപ്പോൾ ടെർമിനലിലേക്ക് പോകുക .
06:19 മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതി ന്അപ് ആരോ കീ അമർത്തിയ ശേഷം 'Enter' അമർത്തുക.
06:27 ഇത് റാൻഡം നമ്പറുകളുടെ വ്യത്യസ്ത സെറ്റ് നൽകുന്നു.


06:31 അതിനാൽ, ഒരു 'ആർഗ്യുമെന്റ്' ഇല്ലാതെ ഉപയോഗിക്കുമ്പോൾ, 'srand function' ഉപയോഗിച്ച് നമുക്ക് ഒരു പുതിയ റാൻഡം നമ്പറുകൾ സൃഷ്ടിക്കാൻ കഴിയും.
06:40 അടുത്തതായി ചില string functions. നോക്കാം

length functionഒരു പ്രത്യേക സ്‌ട്രിംഗിന്റെ നീളം നൽകുന്നു.

06:49 index function വലിയ string s1.നുള്ളിൽ string s2 വിന്റെ സ്ഥാനം നിർണ്ണയിക്കുന്നു.
06:57 ഉദാഹരണത്തിന്, index within parentheses within double quotes linux comma within double quotes n, എന്നത് 3 നൽകുന്നു.

നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.

07:10 'Awkdemo.txt' ഫയൽ തുറക്കുക..
07:14 'Awkdemo.txt' ഫയലിലെ ഓരോ വിദ്യാർത്ഥിക്കും 4 അക്ക റോൾ നമ്പർ ഉണ്ടെന്ന് ഞങ്ങൾക്കറിയാം.
07:21 ചിലപ്പോൾ ടൈപ്പിംഗ് പിശക് കാരണം, റോൾ നമ്പറുകളിൽ തെറ്റായ അക്കങ്ങൾ ഉണ്ടാകാം .

'Awk കമാൻഡുകൾ ഉപയോഗിച്ച് നമുക്ക് ഇവ എളുപ്പത്തിൽ കണ്ടെത്താനാകും.'

07:30 ടെർമിനലിലേക്ക് പോകുക .

ഞാൻ 'ടെർമിനൽ' ക്ലിയർ ചെയ്യട്ടെ

07:36 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ command ടൈപ്പുചെയ്യുക.

ആദ്യ ഫീൽഡിന്റെ നീളം 4 ന് തുല്യമാണോ അല്ലയോ എന്ന് ഞങ്ങൾ ഇവിടെ പരിശോധിക്കുന്നു.

07:46 അല്ല എങ്കിൽ, ആ റെക്കോർഡ് പ്രിന്റ് ചെയ്യാം .
Enter.  അമർത്തുക.
07:53 നോക്കൂ, S02 തെറ്റായി ടൈപ്പുചെയ്ത ഒരു റോൾ നമ്പർ ആണ് .
08:00 ഇതിന് മൂന്ന് അക്കങ്ങളുണ്ട്, മറ്റുള്ളവയെല്ലാം നാല് അക്കങ്ങൾ ഉള്ളവയാണ് .
08:07 substr(s,a,b) function ഒരു വലിയ string s. എന്നതു ൽ നിന്ന് നിന്ന് ഒരു substring 'വേർതിരിച്ചെടുക്കുന്നു.
08:14 ഞാൻ പാരാമീറ്ററുകൾ വിശദീകരിക്കട്ടെ .
08:17 ഇവിടെ ' string ഇതാ .
08:20 a എന്നത്എ ക്‌സ്‌ട്രാക്റ്റുചെയ്യൽ ആരംഭിക്കുന്ന സ്ഥാനത്തെ സൂചിപ്പിക്കുന്നു
08:26 bഎക്‌സ്‌ട്രാക്റ്റുചെയ്യേണ്ട കാരക്ടേഴ്‌സ് ന്റെ എണ്ണത്തെ സൂചിപ്പിക്കുന്നു.

നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.

08:33 'Awkdemo.txt' ഫയലിലേക്ക് മാറുക.
08:37 റോൾ നമ്പറുകളുടെ ആദ്യ അക്ഷരം ആ വിദ്യാർത്ഥി താമസിക്കുന്ന ഹോസ്റ്റൽ കോഡിനെ സൂചിപ്പിക്കുന്നു .
08:46 ഹോസ്റ്റൽ Aയിൽ താമസിക്കുന്ന വിദ്യാർത്ഥികളുടെ പട്ടിക കണ്ടെത്താൻ ഞങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് പറയുക.
08:52 അത് കിട്ടാൻ , നമുക്ക് 'ടെർമിനലിലേക്ക് മാറാം.
08:56 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
09:00 ഇവിടെ നമ്മൾ 'string 1' 'എന്ന് സൂചിപ്പിക്കുന്നstring എടുക്കുന്നു.
09:05 '$ 1' ആദ്യത്തെ fieldനെ പ്രതിനിധീകരിക്കുന്നു എന്ന് നമുക്ക് അറിയാം അതാണ് നമ്മുടെ റോൾ നമ്പർ.
09: 12 അടുത്തതായി, position one എന്ന്ആ രംഭിക്കുന്ന ഒരുsubstring എക്സ്ട്രാക്ട് ചെയുന്നു .
09: 19 അത് ക്യാപിറ്റൽ A ക്കു തുല്യമാണെങ്കിൽ , ഫയലിൽ നിന്നുള്ള ആ വരി പ്രിന്റ് ചെയ്യും .

ഔട്ട്പുട്ട് കാണുന്നതിന് 'Enterഅമർത്തുക.

09:29 ഹോസ്റ്റൽ Aയാൽ ഉള്ള വിദ്യാർത്ഥികളുടെ ലിസ്റ്റ് നമുക്ക് ലഭിച്ചു.
09:34 function split നമ്മൾ നേരത്തെ കണ്ടു.

അത്ഞാ കൊണ്ട് ഞാൻ ഇവിടെ വിശദാംശങ്ങൾ വിശദീകരിക്കുന്നില്ല.

09:40 നിങ്ങൾക്ക് സംശയമുണ്ടെങ്കിൽ ദയവായി മുമ്പത്തെ 'awk' ട്യൂട്ടോറിയലുകൾ നോക്കുക .
09:45 Input/Output.എന്നത് മായി ബന്ധപ്പെട്ട മറ്റ് ചിലfunctions ഉണ്ട്.
awk.  എന്നത് ൽ unix command  റൺ ചെയ്യാൻ system() function നമ്മെ സഹായിക്കുന്നു .
09:56 ഇപ്പോൾ,നമ്മൾ awk command.unix command date റൺ ചെയ്യും.
10: 01 ഇവിടെ terminal ൽ കാണിച്ചിരിക്കുന്നപോലെ കമാൻഡ് ടൈപ്പുചെയ്യുക.
Enter. അമർത്തുക. 
10: 09 ഇന്നത്തെ തീയതിയും സമയവും .ഔട്ട്പുട് ആയി terminal ലിൽ' കാണിക്കും .
10:15 ഇപ്പോൾ, നമുക്ക് എന്ത് കൊണ്ട് ഇത് എന്തിന് ആവശ്യമാണ്? 'Awk കമാൻഡിന്റെ' BEGIN 'സെക്ഷൻ മാത്രമേ നമ്മൾ കൊടുത്തിട്ടുള്ളു .
10:21 യഥാർത്ഥത്തിൽ , ആവശ്യമായ ഔട്പുട് പ്രദർശിപ്പിക്കുന്നതിന് മുമ്പ് system date, പ്രിന്റുചെയ്യാൻ നമ്മൾ ആഗ്രഹിച്ചേക്കാം.
10:28 അത്തരം സമയങ്ങളിൽ awk command.ൽ നിന്ന് system commands എക്സിക്യൂട്ട് ചെയ്യേണ്ടതുണ്ട്.
10:34 systime(), strftime() ,എന്നിങ്ങനെ ടൈം സ്റ്റാമ്പ് ആയി ബന്ധപ്പെട്ട ചിലfunctions ഉണ്ട്


10:43 functions. നെ ക്കുറിച്ച് അറിയാൻ ഇന്റർനെറ്റിലൂടെ ബ്ര rowse സ് ചെയ്യുക.
10:48 ഇത് നമ്മെ ഈ ട്യൂട്ടോറിയലിന്റെ അവസാനഭാഗത്തു എത്തിക്കുന്നു .

നമുക്ക് സംഗ്രഹിക്കാം.

10:53 ഈ ട്യൂട്ടോറിയലിൽ വ്യത്യസ്ത തരത്തിലുള്ള built-in functionsഫംഗ്ഷനുകളെക്കുറിച്ച്' നമ്മൾ പഠിച്ചു

Arithmetic functions, String functions, Input/Output functions Time stamps functions

11:06 ഒരു അസൈൻ‌മെൻറ് ആയി
ഇവിടെ  'awkdemo.txt'  ഫയലിൽ വിദ്യാർത്ഥിയുടെ പേരിന്റെ  മൂന്നാമത്തെ അക്ഷരമായി   സ്മാൾ  u ഉള്ള 


11:13 ഓരോ റെക്കോർഡിന്റെയും അവസാനത്തെ fieldപ്രിന്റ് ചെയ്യാൻ ഒരു 'awk' പ്രോഗ്രാം എഴുതുക.
11:22 ഇനിപ്പറയുന്ന ലിങ്കിലെ വീഡിയോ സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്റ്റിനെ സംഗ്രഹിക്കുന്നു.

ദയവായി ഇത് ഡൗൺലോഡ് ചെയ്ത് കാണുക.

11:30 Spoken Tutorial Project ടീം സ്‌പോക്കൺ ട്യൂട്ടോറിയലുകൾ ഉപയോഗിച്ച് വർക്ക്‌ഷോപ്പുകൾ നടത്തുന്നു.

കൂടാതെ ഓൺലൈൻ ടെസ്റ്റു പാസാകുന്നവർക്കു സർട്ടിഫിക്കറ്റുകൾ നൽകുന്നു.

കൂടുതൽ വിവരങ്ങൾക്ക്, ഞങ്ങൾക്ക് എഴുതുക.

11: 43 ഈ ഫോറത്തിൽ നിങളുടെ സമയബന്ധിതമായ ചോദ്യങ്ങൾ പോസ്റ്റുചെയ്യുക.
11:47 സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്ടിന് നു ഫണ്ട് കൊടുക്കുന്നത് നൽകുന്നത് NMEICT, MHRD,ഗവൺമെന്റ് ഓഫ് ഇന്ത്യ എന്നിവരാണ് .

ഈ മിഷൻ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ഈ ലിങ്കിൽ ലഭ്യമാണ്.

11:59 ഇത് ഐ ഐ ടി ബോംബെ യിൽ നിന്നും വിജി നായർ ,പങ്കു

ചേർന്നതിന് നന്ദി

Contributors and Content Editors

Vijinair