Difference between revisions of "Linux-AWK/C2/Built-in-Variables-in-awk/Malayalam"

From Script | Spoken-Tutorial
Jump to: navigation, search
Line 2: Line 2:
 
{| border=1
 
{| border=1
 
| <center>'''Time'''</center>
 
| <center>'''Time'''</center>
| <center>'''Narration'''</center>
+
| <center>'''Narration'''</center>
  
 
+
|-  
|-
+
 
| 00:01
 
| 00:01
| ഹലോ, '''awk'''. എന്നതിലെ''' built-in functions''' നു കളെ  ഈ സ്പോക്കൺ ട്യൂട്ടോറിയലിലേക്ക് സ്വാഗതം.
+
| '''awk built-in variables'''   '''awk script.''' എന്ന സ്പോക്കൺ ട്യൂട്ടോറിയലിലേക്കു സ്വാഗതം.  
  
|-
+
|-  
 
| 00:07
 
| 00:07
| ഈ ട്യൂട്ടോറിയലിൽ താഴെ പറയുന്ന വ്യത്യസ്ത തരത്തിലുള്ള'''built-in functions'''ളെക്കുറിച്ച്' ''പഠിയ്ക്കുന്ന
+
| ഈ ട്യൂട്ടോറിയലിൽ, '''Built-in variables ''''''awk script'''.എന്നിവയെക്കുറിച്ച് നമ്മൾ പഠിക്കും.
'''Arithmetic functions'''
+
  
|-
+
|-  
| 00:15
+
| 00:14
|'''String functions'''
+
| ചില ഉദാഹരണങ്ങളിലൂടെ നമ്മൾ  ഇത് ചെയ്യും.
  
|-
+
|-  
 
| 00:17
 
| 00:17
|'''Input/Output functions '''  '''Time-stamp functions'''
+
| ഈ ട്യൂട്ടോറിയൽ റെക്കോർഡുചെയ്യാൻ, ഞാൻ ഇത് ഉപയോഗിക്കുന്നു:
 +
'''Ubuntu Linux 16.04 Operating System '''  '''gedit text editor''' 3.20.1
  
|-
+
|-  
| 00:23
+
| 00:30
| ചില ഉദാഹരണങ്ങളിലൂടെ നമ്മൾ ഇത് ചെയ്യും.
+
| ഈ ട്യൂട്ടോറിയലിൽ ഉപയോഗിച്ചിരിക്കുന്ന ഫയലുകൾ ഈ ട്യൂട്ടോറിയൽ പേജിലെ '''Code Files''' ലിങ്കിൽ ലഭ്യമാണ്.
  
|-
+
അവ ഡൗൺലോഡ് ചെയ്ത് ഉപയോഗിക്കുക.
| 00:26
+
| ഈ ട്യൂട്ടോറിയൽ റെക്കോർഡുചെയ്യാൻ, ഞാൻ  '''Ubuntu Linux '''16 .04 ഓപ്പറേറ്റിംഗ് സിസ്റ്റവും ഉപയോഗിക്കുന്നു
+
  
'''gedit text editor '''3.20.1
+
|-
 +
| 00:40
 +
| ഈ ട്യൂട്ടോറിയൽ‌ അഭ്യസിക്കുവാൻ  , നിങ്ങൾ‌ക്കു  ഈ വെബ്‌സൈറ്റിലെ മുമ്പത്തെ '' 'awk tutorials' 'അറിഞ്ഞിരിക്കണം .
  
|-
+
|-  
| 00:38
+
| 00:47
| നിങ്ങൾക്ക് ഇഷ്ടമുള്ള ഏത് ടെക്സ്റ്റ് എഡിറ്ററും ഉപയോഗിക്കാം.
+
| ഇല്ലെങ്കിൽ, ദയവായി ഈ വെബ്‌സൈറ്റിലെ ബന്ധപ്പെട്ട  ട്യൂട്ടോറിയലുകൾ  കാണുക .
  
|-
+
|-  
| 00:42
+
| 00:52
| ഈ ട്യൂട്ടോറിയൽ‌ അഭ്യസിക്കുന്നതിന്, നിങ്ങൾ‌ ഈ വെബ്‌സൈറ്റിലെ മുമ്പത്തെ '' 'awk' 'ട്യൂട്ടോറിയലുകളിലൂടെ കടന്നുപോയിരിക്കണം.
+
| ആദ്യം, നമുക്ക് ' '' awk '' ' '''built-in variables ''' നോക്കാം.
  
|-
+
|-  
| 00:49
+
| 00:57
|  '''C''' അല്ലെങ്കിൽ '''C++'''.പോലുള്ള ഏതെങ്കിലും പ്രോഗ്രാമിംഗ് ലാങ്‌അജ്‌ നെ ക്കുറിച്ചു  നിങ്ങൾക്ക് കുറച്ച് അറിവ് ഉണ്ടായിരിക്കണം.
+
| Capital '''RS''' ഒരു'''input''' ഫയലിലെ '''record separator'''ആണ് . ഡീഫാൾട് ആയി , ഇത്'''newline'''. ആണ്.
  
|-
+
|-  
| 00:56
+
| 01:07
| ഇല്ലെങ്കിൽ, ദയവായി ഞങ്ങളുടെ വെബ്‌സൈറ്റിലെ ബന്ധപ്പെട്ട ട്യൂട്ടോറിയലുകളിലൂടെ പോകുക.
+
Capital '''FS''' ഒഒരു'''input''' ഫയലിലെ  '''field separator '''ആണ് .
  
|-
+
|-  
| 01:02
+
| 01:13
| ഈ ട്യൂട്ടോറിയലിൽ ഉപയോഗിച്ചിരിക്കുന്ന ഫയലുകൾ ഈ ട്യൂട്ടോറിയൽ പേജിലെ ''Code Files'''ലിങ്കിൽ ലഭ്യമാണ്.
+
| ഡിഫാൾട്ട് ആയി  '' 'FS' '' എന്നതിന്റെ മൂല്യം ഒരു '''whitespace'''.ആണ്.
  
അവ ഡൌൺലോഡ്  ചെയ്ത് എക്‌സ്‌ട്രാക്റ്റുചെയ്യുക.
+
|-
 +
| 01:18
 +
| Capital '''ORS'''  '' '''output record separator'''.ഡിഫൈൻ ചെയുന്നു .
 +
ഡീഫാൾട് ആയി, ഇത്'''newline''' ആണ്.
  
|-
+
|-  
| 01:12
+
| 01:27
|'''Built-in functions'''എല്ലായ്പ്പോഴും '' 'awk' '' ൽ ലഭ്യമാണ്.
+
| Capital '''OFS'''''  '''output field separator'''. നെ ഡിഫൈൻ ചെയുന്നു .
  
|-
+
ഡിഫാൾട് ആയി  ഇത്  '''whitespace.'''ആണ്.
| 01:17
+
| ആദ്യം നമ്മൾ '''arithmetic functions.'''ക്കുറിച്ച് പഠിക്കും.
+
  
'''square root function (sqrt (x))''' returns positive '''square root''' of a number '''x'''
+
|-
 +
| 01:36
 +
| ഇവ ഓരോന്നിന്റെയും അർത്ഥം നമുക്ക് മനസ്സിലാക്കാം.
  
|-
+
|-  
| 01:27
+
| 01:40
| '' 'int' '' ഫംഗ്ഷൻ '' 'x' '' നെ ഒരു പൂർണ സംഖ്യ യിലേക്ക് മാറ്റുന്നു .
+
| ഇപ്പോൾ നമുക്ക് '' 'awkdemo' '' ഫയൽ നോക്കാം.
  
|-
+
|-  
| 01:32
+
| 01:44
| '''exponential  function'''  '' x '' 'ന്റെ എക്‌സ്‌പോണൻഷ്യൽ നൽകുന്നു.
+
| ഞങ്ങൾ ഈ '' 'awkdemo' '' ഫയൽ ''''awk' command''', ഉപയോഗിച്ച് പ്രോസസ്സ് ചെയ്യുമ്പോൾ, ഇത് നമ്മുടെ  '' ''input '''file.ഫയലായി മാറുന്നു.
  
|-
+
|-  
| 01:37
+
| 01:51
| '''log function'''   '' 'x' '' ന്റെ നാച്ചുറൽ  ലോഗരിതം നൽകുന്നു.
+
| എല്ലാ '''record''' കളും  പരസ്പരം ഒരു  '''newline character'''. കൊണ്ട് വേർതിരിച്ചിട്ടുണ്ടെന്ന് നോക്കുക .
|-
+
|-  
| 01:43
+
| 01:58
| '''sin''' ഉം '''cos''' ഉം  '''sine(x)'''  '''cosine(x)''' എന്നിവ നൽകുന്നു
+
| '''newline'''  '''record separator RS variable. '''ന്റെ ഡിഫാൾട് മൂല്യം ആണ് .
  
|-
+
അതിനാൽ, മറ്റൊന്നും ചെയ്യേണ്ടതില്ല
| 01:49
+
| '''argument x '''റേഡിയൻസിൽ പരാമർശിക്കേണ്ടതുണ്ട്.
+
  
|-
+
|-  
| 01:55
+
| 02:08
| '''functions'''.മനസിലാക്കാൻ ഒരു ഉദാഹരണം നോക്കാം.
+
| എല്ലാ  '''field'''s  കളും '''pipe''' ചിഹ്നത്താൽ വേർതിരിച്ചിരിക്കുന്നതായി ശ്രദ്ധിക്കുക.
  
|-
+
ഇതിനെക്കുറിച്ച് നമുക്ക് എങ്ങനെ '' 'awk' '' എന്നതിനെ അറിയിക്കാൻ കഴിയും?
| 02:00
+
| ഞാൻ ഇതിനകം തന്നെ  '''arithmetic underscore function dot awk''' ഫയലിൽ കോഡ് എഴുതിയിട്ടുണ്ട്.
+
  
ഇത്'''Code Files'''ലിങ്കിൽ ലഭ്യമാണ്.
+
നമുക്ക് നോക്കാം.
  
|-
+
|-  
| 02:10
+
| 02:18
| ഇവിടെ, ഞങ്ങൾ യഥാക്രമം പോസിറ്റീവ്, നെഗറ്റീവ് സംഖ്യകളുടെ '''square root''' അച്ചടിക്കുന്നു.
+
| ഡിഫാൾട്ഏ ആയി അത്  '''space'''s അല്ലെങ്കിൽ '''tab'''', '''field'''s. നെ വേർതിരിക്കുന്നു.
 
+
|-
+
| 02:17
+
| അടുത്തതായി ഞങ്ങൾ യഥാക്രമം പോസിറ്റീവ്, നെഗറ്റീവ് സംഖ്യകൾക്കായി പൂർണ സംഖ്യ മൂല്യം അച്ചടിക്കുന്നു.
+
  
|-
 
| 02:24
 
| ഒരു ചെറിയ സംഖ്യയുടെയും വളരെ വലിയ സംഖ്യയുടെയും എക്‌സ്‌പോണൻഷ്യൽ ഞങ്ങൾ അച്ചടിക്കുന്നു.
 
 
|-  
 
|-  
| 02:31
+
| 02:24
| അതിനുശേഷം, നാച്ചുറൽ '''logarithm''' പോസിറ്റീവ് ആണ്, കൂടാതെ നെഗറ്റീവ് സംഖ്യകൾ പ്രിന്റ് ചെയുകയും ചെയ്യുന്നു.
+
| നമ്മുടെ  മുമ്പത്തെ ട്യൂട്ടോറിയലുകളിൽ പഠിച്ചതുപോലെ '''hyphen capital F'''ഓപ്ഷന്റെ സഹായത്തോടെ നമുക്ക് ഇത് റീസെറ്റ് ചെയ്യാൻ കഴിയും.
  
 
|-  
 
|-  
| 02:38
+
| 02:33
|  '''0.52 radian''' ന്റെ  '''sine'''  '''cosine'''  മൂല്യങ്ങൾ അച്ചടിക്കുന്നു, അത് ' ''''30 degree.'''
+
| അല്ലെങ്കിൽ, നമുക്ക് ഇത് '''FS''' '''variable''' ഉപയോഗിച്ച് '''BEGIN''' സെക്ഷൻ ൽ റീസെറ്റ് ചെയ്യാൻ കഴിയും.
 +
|-
 +
| 02:40
 +
| നമുക്ക് ഇത് ഒരു ഉദാഹരണത്തിലൂടെ നോക്കാം .
  
നമുക്ക് ഫയൽ ടെർമിനലിൽ എക്സിക്യൂട്ട് ചെയ്യാം.
+
എനിക്ക് 5000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റ് ലഭിക്കുന്ന വിദ്യാർത്ഥികളുടെ പേര് കണ്ടെത്തണമെന്ന്  കരുതുക.
  
 
|-  
 
|-  
| 02:50
+
| 02:51
| Ctrl, Alt, T കീകൾ അമർത്തി ടെർമിനൽ തുറക്കുക.
+
| '' 'CTRL, ALT' '', '' 'T' '' കീകൾ അമർത്തി'''terminal'''  തുറക്കുക.
  
 
|-  
 
|-  
| 02:55
+
| 02:57
| നിങ്ങൾ '' cd '' 'കമാൻഡ് ഉപയോഗിച്ച് ഫയൽ ഡൗൺലോഡ് ചെയ്ത് എക്‌സ്‌ട്രാക്റ്റുചെയ്‌ത ഫോൾഡറിലേക്ക് പോകുക.
+
| നിങ്ങൾ '''cd command.''' ഉപയോഗിച്ച്  '''Code Files'''ഡൗൺലോഡ് ചെയ്തു എക്‌സ്‌ട്രാക്റ്റുചെയ്ത ഫോൾഡർ ലേക്ക് പോകുക  
  
 
|-  
 
|-  
| 03:03
+
| 03:04
| ഇപ്പോൾ '' 'awk space -f space arithmetic_function.awk' '' എന്ന് ടൈപ്പുചെയ്യുക.
+
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
 
+
ഔട്ട്പുട്ട് കാണുന്നതിന് '' 'Enter' അമർത്തുക.
+
  
 
|-  
 
|-  
| 03:14
+
| 03:08
| ഈ ഔട്ട്പുട്ട്  നിന്നും ചില കാര്യങ്ങൾ വ്യ്കതമാണ് .
+
| ഇവിടെ, '''BEGIN''' section,, '' 'FS' '' ന്റെ മൂല്യം ഒരു '''pipe'''  ചിഹ്നമായി നമ്മൾ നൽകി.
 +
 
 +
അതുപോലെ, നമുക്ക് '''RS variable.'''മോഡിഫൈ ചെയ്യാനും  കഴിയും.
  
 
|-  
 
|-  
| 03:18
+
| 03:19
||'''sqrt() function''' ഒരു പോസിറ്റീവ് സംഖ്യയുടെ സ്‌ക്വയർ  റൂട്ട് നൽകുന്നു.
+
| '''command'''. എക്സിക്യൂട്ട് ചെയ്തു  '''Enter''' അമർത്തുക .
  
 
|-  
 
|-  
 
| 03:23
 
| 03:23
| നമ്പർ നെഗറ്റീവ് ആണെങ്കിൽ ഇത് ' '''nan''' അല്ലെങ്കിൽ '''not a number''''നൽകുന്നു.
+
| സ്റ്റൈപ്പന്റായി 5000 രൂപയിൽ കൂടുതൽ ലഭിക്കുന്ന വിദ്യാർത്ഥികളുടെ ലിസ്റ്റു ഔട്ട്പുട്ട് കാണിക്കുന്നു.
  
 
|-  
 
|-  
| 03:29
+
| 03:30
|  '''int''' ഏതെങ്കിലും പോസിറ്റീവ് അല്ലെങ്കിൽ നെഗറ്റീവ് സംഖ്യയുടെ വിഭജിച്ച പൂർണ സംഖ്യ നൽകുന്നു.
+
| ഇവിടെ, '''name '''ഫീൽഡ്  '''stipend '''ഫീൽഡ് എന്നിവ '''space'''.ഉപയോഗിച്ച് വേർതിരിക്കുന്നു.
  
 
|-  
 
|-  
 
| 03:36
 
| 03:36
| '' 'exp') '' ഒരു സംഖ്യയുടെ എക്‌സ്‌പോണൻഷ്യൽ പവർ നൽകുന്നു
+
| കൂടാതെ, എല്ലാ'''record'''s ' ' '''newline character.'''കൊണ്ട്  വേർതിരിച്ചിരിക്കുന്നു.' ''
  
സംഖ്യ വളരെ വലുതാണെങ്കിൽ, '''function'''  '' inf '' 'നൽകും
+
|-
 +
| 03:42
 +
'''output field separator''' നായി ''' colon''' നമ്മൾ ആഗ്രഹിക്കുന്നു എന്ന് കരുതുക.
 +
 
 +
''' output record separator''' ആയി ഡബിൾ  '''newline '''
  
 
|-  
 
|-  
| 03:47
+
| 03:52
| നാച്ചുറൽ  '''logarithm''' ഒരു പോസിറ്റീവ് സംഖ്യയാണ്'''log() function'''.
+
| നമുക്ക് ഇത് എങ്ങനെ ചെയ്യാൻ കഴിയും? നമുക്ക് നോക്കാം.
  
 
|-  
 
|-  
| 03:53
+
| 03:55
| നമ്പർ നെഗറ്റീവ് ആണെങ്കിൽ, '''function '''   '''nan'''. നൽകുന്നു.
+
| മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് '''terminal''',ൽ, '' 'അപ് ആരോ കീ അമർത്തുക.
  
 
|-  
 
|-  
| 03:58
+
| 04:01
| '''Sine '''and '''cosine functions '''ബന്ധപ്പെട്ടേയ്  മൂല്യങ്ങൾ നൽകുന്നു
+
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് മോഡിഫൈ ചെയുക .
  
നിങ്ങൾക്ക് കാൽക്കുലേറ്റർ ഉപയോഗിച്ച് നിങ്ങളുടെ  മൂല്യം പരിശോധിക്കാൻ കഴിയും.
+
തുടർന്ന് '''Enter.'''അമർത്തുക.
  
 
|-  
 
|-  
| 04:07
+
| 04:08
| ഇപ്പോൾ നമുക്ക്  '''random functions.'''നോക്കാം.
+
| ഔട്ട്പുട്ട് ആഗ്രഹിക്കുന്ന  ഫോർമാറ്റിൽ നമുക്ക്  ലഭിക്കും.
  
 
|-  
 
|-  
| 04:11
+
| 04:12
| | '''rand()'''  0 നും 1 നും ഇടയിലുള്ള ഏതെങ്കിലും റാൻഡം നമ്പർ നൽകുന്നു. പക്ഷേ 0 അല്ലെങ്കിൽ 1 കിട്ടില്ല
+
| ഇപ്പോൾ, നമ്മുടെ പുതിയ ഇൻപുട്ട് ഫയൽ '' 'sample.txt ആണെന്ന് കരുതുക.
  
 
|-  
 
|-  
| 04: 21
+
| 04:18
ഒരു '''awk '''എക്സിക്യൂഷനിൽ‌ ജനറേറ്റുചെയ്‌ത നമ്പറുകൾ‌ ക്രമരഹിതമായിരിക്കും.
+
| ഇവിടെ '''field separator ''' , '''newline ''' എന്നതും '''record separator '''ഡബിൾ '''newline.'''ഉം ആണ് .
  
 
|-  
 
|-  
 
| 04:27
 
| 04:27
| എന്നാൽ '' 'awk' '' പ്രോഗ്രാമിന്റെ വിവിധ എക്സിക്യൂഷനുകൾ  പ്രവചിക്കാവുന്നതാണ്.
+
| ഈ ഫയലിൽ നിന്ന് നമുക്ക് എങ്ങനെ '''roll no.'''ഉം '''name''' ഉം എക്‌സ്‌ട്രാക്റ്റുചെയ്യാനാകും
 +
|-
 +
| 04:32
 +
| അതെ, നിങ്ങൾഊഹിച്ചതു ശരി ആണ്''FS'''  '''RS''' '''variables'''മോഡിഫൈ ചെയ്യണം .
  
 
|-  
 
|-  
| 04:33
+
| 04:39
'''random function.'''നായി  '''seed value x''' കൊടുക്കാൻ    '''srand(x)''' ഉപയോഗിക്കുന്നു.
+
| ഈ ട്യൂട്ടോറിയൽ താൽകാലം നിർത്തി ഇത് ഒരു അസൈൻമെന്റായി ചെയ്യുക.
  
 +
|-
 +
| 04:43
 +
| അടുത്തതായി, മറ്റ്'''built-in variables.''' നമുക്ക് നോക്കാം.
  
 
|-  
 
|-  
| 04:39
+
| 04:47
| '' 'X' '' ഇല്ല  എങ്കിൽ '''seed value.''' ആയി  തിയതിയും ആ ദിവസത്തെ സമയവും ഉപയോഗിക്കുന്നു.
+
| Capital '''NR''' എന്നത്  '' '' 'awk' 'പ്രോസസ്സ് ചെയ്ത റെക്കോർഡുകളുടെ എണ്ണം ' നൽകുന്നു.
ഒരു ഉദാഹരണത്തിലൂടെ നമുക്ക് ഇവ മനസ്സിലാക്കാം.
+
  
 
|-  
 
|-  
| 04:49
+
| 04:53
| ഞാൻ'''random function '''നായി ഒരു കോഡ് എഴുതി അതിനെ' '' random.awk '' 'ആയി  സേവ് ചെയ്തു .
+
| Capital '''NF''' നിലവിലെ റെക്കോർഡിൽ‌ ഫീൽ‌ഡുകളുടെ എണ്ണം നൽകുന്നു.
  
 
|-  
 
|-  
| 04:56
+
| 04:59
| ഇവിടെ, '''for loop, rand() function ''' ' '' 0 നും 1 നും ഇടയിൽ ഒരു റാൻഡം നമ്പർ സൃഷ്ടിക്കും.
+
| ഇതിൽ  ഒരു ഉദാഹരണം നോക്കാം.
 +
 
 +
ഫയലിൽ അപൂർണ്ണമായ വരികൾ കണ്ടെത്താൻ നമ്മൾ  ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.
  
 
|-  
 
|-  
| 05:04
+
| 05:07
| കിട്ടിയ  സംഖ്യ 50 കൊണ്ട് ഗുണിച്ച് അത് പ്രിന്റ് ചെയ്യും .
+
| ഇവിടെ, പൂർണ്ണമല്ലാത്ത വരി എന്നതു കൊണ്ട്   അർത്ഥമാക്കുന്നത് സാധാരണ 6 ഫീൽഡുകളേക്കാൾ കുറവാണ്.
 +
 
 
|-  
 
|-  
| 05:10
+
| 05:13
| അതിനാൽ, ഈ കോഡ് 50 നുള്ളിൽ 5 റാൻഡം നമ്പറുകൾ സൃഷ്ടിക്കും.
+
| '' 'ടെർമിനലിലേക്ക് മാറുക. '' 'Ctrl' '', '' 'L' 'കീകൾ  അമർത്തി ടെർമിനൽക്ലിയർ ചെയുക .
  
 
|-  
 
|-  
| 05:16
+
| 05:20
| '''terminal''' ലേക്ക് പോയി ഫയൽ എക്സിക്യൂട്ട് ചെയ്യുക.
+
| കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
ഞാൻ '' 'ടെർമിനൽ' '' ക്ലിയർ ചെയ്യട്ടെ.
+
  
 
|-  
 
|-  
| 05:23
+
| 05:24
| ടൈപ്പ് ചെയ്യുക: '' 'awk space hyphen f space random dot awk' ''   '' 'Enter ' ''അമർത്തുക.
+
| ഫീൽഡുകൾ'''pipe ''ചിഹ്നം കൊണ്ട്  വേർതിരിക്കുന്നതിനാൽ,'''BEGIN''' സെക്ഷൻ ൽ '''FS''' മൂല്യം  '''pipe''' ചിഹ്നമായി സെറ്റു ചെയുക .
  
 
|-  
 
|-  
| 05:31
+
| 05:33
| നോക്കൂ, ഇത് 5 റാൻഡം നമ്പറുകൾ നൽകുന്നു.
+
| അടുത്തതായി നമ്മൾ  '''NF not equal to 6''' എന്ന് എഴുതി .
 +
|-
 +
| 05:37
 +
| നിലവിലെ വരിയിലെ ഫീൽഡുകളുടെ എണ്ണം 6 എന്നതിന് തുല്യമല്ലേ എന്ന് ഇത് പരിശോധിക്കുന്നു.
  
 
|-  
 
|-  
| 05:35
+
| 05:43
| ഞാൻ കോഡ് വീണ്ടും എക്സിക്യൂട്ട് ചെയ്താൽ എന്ത് സംഭവിക്കും?
+
| ശരിയാണെങ്കിൽ, '''print''' സെക്ഷൻ എന്ന് സൂചിപ്പിക്കുന്ന മുഴുവൻ ലൈനിനൊപ്പം റെക്കോർഡിന്റെ ലൈൻ നമ്പർ  '''NR''' പ്രിന്റ് ചെയ്യും.
 +
 
 +
'''Enter''' അമർത്തുക.
  
 
|-  
 
|-  
| 05:39
+
| 05:55
| മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് അപ് ആരോ  കീ അമർത്തി '' 'Enter' '' അമർത്തുക.
+
| '' Out ട്ട്‌പുട്ട് '' 'ൽ, റെക്കോർഡ് നമ്പർ 16 അപൂർണ്ണമായ റെക്കോർഡാണെന്ന് നമുക്ക് കാണാൻ കഴിയും.
 +
 
 +
ഇതിന് 6 ന് പകരം 5 ഫീൽഡുകൾ' മാത്രമേയുള്ളൂ.
  
 
|-  
 
|-  
| 05:47
+
| 06:05
| നമുക് അതെ ഔട്ട്പുട്ട്  ലഭിക്കുന്നു. ഇതിനർത്ഥം, '' 'awk' '' സ്ക്രിപ്റ്റിന്റെ ഓരോ എക്സിക്യൂഷനിലും ഓരോ  ക്രമരഹിതമായ സംഖ്യകൾ  ലഭിയ്ക്കുന്നു.
+
| നമുക്ക് ഒരു ഉദാഹരണം കൂടി നോക്കാം.
 +
 
 +
എത്ര  '''fields'''പരിഗണിക്കാതെ തന്നെ ഓരോ വിദ്യാർത്ഥിക്കും ആദ്യത്തേതും അവസാനത്തേതുമായ '''field '''എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?
  
 
|-  
 
|-  
| 05:57
+
| 06:16
| ഓരോ എക്സിക്യൂഷനിലും നമുക്ക് എങ്ങനെ ഒരു പുതിയ റാൻഡം നമ്പറുകൾ ലഭിക്കും?
+
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ '''terminal'''ൽ കമാൻഡ് ടൈപ്പുചെയ്യുക.
  
കോഡിലേക്ക് ഒന്ന് കൂടി മാറുക .
+
|-
 +
| 06:21
 +
| ഇവിടെ നമ്മൾ  '''FS''' '''വേരിയബിൾ സെറ്റു  ചെയ്യുന്നതിന്  പകരം '''hyphen capital F'''ഓപ്ഷൻ ഉപയോഗിച്ചു.
  
 +
'''Enter'''.അമർത്തുക.
 +
 +
|-
 +
| 06:30
 +
| ഫയലിലെ ഓരോ റെക്കോർഡിനും നമുക്ക്  ആദ്യത്തേതും അവസാനത്തേതുമായ '''fields''' മാത്രമേ ലഭിക്കൂ.
 
|-  
 
|-  
| 06:06
+
|06:36
| '''for loop''' ന് മുമ്പ്ടൈ പ്പുചെയ്യുക, '''srand() function'''.
+
|ഇപ്പോൾ മറ്റെന്തെങ്കിലും ശ്രമിക്കാം.
  
 
|-  
 
|-  
| 06:11
+
|06:39
| ഫയൽ സേവ് ചെയ്യാൻ Crtl, S എന്നീ കീകൾ അമർത്തുക.
+
|'' demo1.txt '' ',' '' demo2।txt '' 'എന്നീ രണ്ട് ഫയലുകളിൽ വിദ്യാർത്ഥികളുടെ റെക്കോഡുകൾ ഉണ്ടെന്നു കരുതുക .
  
 
|-  
 
|-  
| 06:16
+
|06:48
| ഇപ്പോൾ ടെർമിനലിലേക്ക് പോകുക .
+
|ഈ രണ്ട് ഫയലുകളിൽ നിന്നും ആദ്യത്തെ 3 വരികൾ അച്ചടിക്കാൻ നമ്മൾ  ആഗ്രഹിക്കുന്നു.
 +
 
 +
'' 'NR' '' വേരിയബിൾ ഉപയോഗിച്ച് നമുക്ക് ഇത് ചെയ്യാം .  
  
 
|-  
 
|-  
| 06:19
+
|06:57
| മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതി ന്അപ് ആരോ കീ  അമർത്തിയ ശേഷം  '' 'Enter' '' അമർത്തുക.
+
|രണ്ട് ഫയലുകളുടെ കണ്ടെന്റ്സ് ഇതാ.
  
 
|-  
 
|-  
| 06:27
+
|07:02
| ഇത് റാൻഡം നമ്പറുകളുടെ വ്യത്യസ്ത സെറ്റ് നൽകുന്നു.
+
|ഇപ്പോൾ, ഓരോ ഫയലി ലെയും  ആദ്യത്തെ 3 വരികൾ പ്രദർശിപ്പിക്കുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ്'''terminal.'''ൽ ടൈപ്പ് ചെയ്യുക.
  
 +
|-
 +
|07:11
 +
|'''Enter.''' അമർത്തുക.'''
  
 
|-  
 
|-  
| 06:31
+
|07:13
| അതിനാൽ, ഒരു 'ആർഗ്യുമെന്റ്' '' ഇല്ലാതെ ഉപയോഗിക്കുമ്പോൾ, '' 'srand function' '' ഉപയോഗിച്ച് നമുക്ക് ഒരു പുതിയ റാൻഡം നമ്പറുകൾ സൃഷ്ടിക്കാൻ കഴിയും.
+
|।ഔട്ട്പുട്ട്  '' 'demo1।txt' '' ഫയലിന്റെ ആദ്യ 3 റെക്കോർഡുകൾ മാത്രം കാണിക്കുന്നു.
  
 
|-  
 
|-  
| 06:40
+
|07:20
| അടുത്തതായി ചില  '''string functions'''. കാണും.
+
|രണ്ടാമത്തെ ഫയലിനും ഇത് എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?
  
'''length function'''ഒരു പ്രത്യേക സ്‌ട്രിംഗിന്റെ നീളം  നൽകുന്നു.
+
|-
 +
|07:24
 +
|'' 'NR' 'എന്നതിനുപകരം' '' FNR '' 'ഉപയോഗിക്കുന്നതാണ് സൊല്യൂഷൻ .
 +
 
 +
നിലവിലെ ഫയലിലെ  '''current record number ''''''FNR''' ആണ് .
  
 
|-  
 
|-  
| 06:49
+
|07:34
| '''index function''' വലിയ '''string s1.'''നുള്ളിൽ''' string s2 ''' വിന്റെ സ്ഥാനം നിർണ്ണയിക്കുന്നു.
+
|ഓരോ തവണയും ഒരു പുതിയ റെക്കോർഡ് വായിക്കുമ്പോൾ '' 'FNR' '' വർദ്ധിക്കും.
  
 
|-  
 
|-  
| 06:57
+
|07:39
| ഉദാഹരണത്തിന്, '''index within parentheses within double quotes linux comma within double quotes n''', എന്നത് 3 നൽകുന്നു.
+
|ഓരോ തവണയും ഒരു പുതിയ ഇൻപുട്ട് ഫയൽ ആരംഭിക്കുമ്പോൾ അത് പൂജ്യമായി വീണ്ടും ഇനിഷ്യലൈസ് ചെയ്യും .
  
നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.
+
|-
 +
|07:46
 +
|പ്രോഗ്രാം എക്സിക്യൂഷൻ ആരംഭിച്ചതുമുതൽ '''awk'''  പ്രോസസ്സ് ചെയ്ത ഇൻപുട്ട് റെക്കോർഡുകളുടെ എണ്ണമാണ് '''NR'''
  
 
|-  
 
|-  
| 07:10
+
|07:55
| '' 'Awkdemo.txt' '' ഫയൽ തുറക്കുക..
+
|ഒരു പുതിയ ഫയൽ ഉപയോഗിച്ച് ഇത് പൂജ്യത്തിലേക്ക്  റീ സെറ്റു  ചെയ്യുന്നില്ല .
 +
 
 
|-  
 
|-  
| 07:14
+
|07:59
| '' 'Awkdemo.txt' '' ഫയലിലെ ഓരോ വിദ്യാർത്ഥിക്കും 4 അക്ക റോൾ നമ്പർ ഉണ്ടെന്ന് ഞങ്ങൾക്കറിയാം.
+
|'''terminal.'''ലേക്ക് മാറുക.
 +
 
 +
മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന്  '''up arrow''' കീ അമർത്തുക.
  
 
|-  
 
|-  
| 07:21
+
|08:06
| ചിലപ്പോൾ ടൈപ്പിംഗ് പിശക് കാരണം, റോൾ നമ്പറുകളിൽ  തെറ്റായ അക്കങ്ങൾ ഉണ്ടാകാം .'' 'Awk കമാൻഡുകൾ ഉപയോഗിച്ച് നമുക്ക് ഇവ എളുപ്പത്തിൽ കണ്ടെത്താനാകും.' ''
+
|മുമ്പത്തെ കമാൻഡ് ഇനിപ്പറയുന്ന രീതിയിൽ മോഡിഫൈ ചെയുക .
 +
 
 +
'' 'NR എന്നതിനുപകരം' '' FNR '' 'എന്ന് ടൈപ്പുചെയ്യുക.
  
 
|-  
 
|-  
| 07:30
+
|08:14
| ടെർമിനലിലേക്ക് പോകുക .
+
|'''NR,'''  നു  അടുത്തായി  '''Print''' സെക്ഷൻ ൽ, '' 'ടൈപ്പ് ചെയ്യുക '''FNR'''.'''Enter.'''അമർത്തുക.
ഞാൻ '' 'ടെർമിനൽ' '' ക്ലിയർ ചെയ്യട്ടെ
+
  
 
|-  
 
|-  
| 07:36
+
|08:21
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ '''command '''ടൈപ്പുചെയ്യുക.
+
|നോക്കൂ, നമുക്ക് ഇപ്പോൾ ശരിയായ ഔട്ട്പുട്ട്  ലഭിക്കുന്നു.
  
ആദ്യ ഫീൽഡിന്റെ നീളം 4 ന് തുല്യമാണോ അല്ലയോ എന്ന് ഞങ്ങൾ ഇവിടെ പരിശോധിക്കുന്നു.
+
പുതിയ ഫയലിനൊപ്പം '' 'FNR' '' പൂജ്യമായി സെറ്റു ചെയ്തിട്ടു ഉണ്ടെൻകിലും '' 'NR' '' വർദ്ധിച്ചുകൊണ്ടിരിക്കുന്നു.
  
 
|-  
 
|-  
| 07:46
+
|08:31
| അല്ല എങ്കിൽ, ആ റെക്കോർഡ് പ്രിന്റ് ചെയ്യാം .
+
|ഇനി നമുക്ക് ചില  '''built-in variables.''' നോക്കാം.
'''Enter'''.  അമർത്തുക.
+
 
 +
'' 'FILENAME' '' വേരിയബിൾ വായിക്കുന്ന ഫയലിന്റെ പേര് നൽകുന്നു.
  
 
|-  
 
|-  
| 07:53
+
|08:40
| നോക്കൂ,  '''S02'''  തെറ്റായി ടൈപ്പുചെയ്ത ഒരു റോൾ നമ്പർ ആണ് . 'ഉണ്ട്.
+
|'' 'ARGC' '' കമാൻഡ് ലൈനിൽ നൽകിയിട്ടുള്ള '''arguments''' കളുടെ എണ്ണം വ്യക്തമാക്കുന്നു.
  
 
|-  
 
|-  
| 08:00
+
|08:46
| ഇതിന് മൂന്ന് അക്കങ്ങളുണ്ട്, മറ്റുള്ളവയെല്ലാം നാല് അക്കങ്ങൾ ഉള്ളവയാണ് .
+
|'' 'ARGV' '' കമാൻഡ് ലൈൻ ആർഗ്യുമെന്റുകൾ സംഭരിക്കുന്ന ഒരു '''array ''' പ്രതിനിധീകരിക്കുന്നു.
  
 
|-  
 
|-  
| 08:07
+
|08:52
|  '''substr(s,a,b) function '''ഒരു വലിയ  '''string s.''' കളിൽ നിന്ന്  നിന്ന് ഒരു '''substring ''''വേർതിരിച്ചെടുക്കുന്നു.
+
| '''ENVIRON'''ഷെൽ എൻ‌വയോൺ‌മെൻറ് വേരിയബിളുകളുടെ '''array ''' യും ബന്ധപ്പെട്ട  മൂല്യങ്ങളും വ്യക്തമാക്കുന്നു.
 +
|-
 +
| 09:00
 +
| '' 'ARGV' ',' '' ENVIRON '' 'എന്നിവ  '''awk''', എന്നതി  ലെ '''array''' ഉപയോഗിക്കുന്നതിനാൽ നമ്മൾ അവ അടുത്ത ട്യൂട്ടോറിയലിൽ നോക്കും .
  
 
|-  
 
|-  
| 08:14
+
| 09:09
| ഞാൻ പാരാമീറ്ററുകൾ വിശദീകരിക്കട്ടെ .
+
| നമുക്ക് ഇപ്പോൾ '' 'FILENAME' '' എന്ന വേരിയബിൾ നോക്കാം.
 +
 
 +
പ്രോസസ്സ് ചെയ്യുന്ന നിലവിലെ ഫയലിന്റെ പേര് എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?
  
 
|-  
 
|-  
| 08:17
+
| 09:18
| ഇവിടെ ' '''string''' ഇതാ .
+
| '''terminal''' ലേക്ക് മാറി കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പുചെയ്യുക.
 +
 
 
|-  
 
|-  
| 08:20
+
| 09:23
|  '''a'''  എന്നത്എ ക്‌സ്‌ട്രാക്റ്റുചെയ്യൽ ആരംഭിക്കുന്ന സ്ഥാനത്തെ സൂചിപ്പിക്കുന്നു
+
| ഇവിടെ '''space '''എന്നത് ഒരു '''string concatenation operator.'''ആയി ഉപയോഗിച്ചു.' ''
 +
 
 +
  command. എക്സിക്യൂട്ട് ചെയ്യാൻ '' 'Enter' '' അമർത്തുക .....
  
 
|-  
 
|-  
| 08:26
+
| 09:32
|  '''b'''എക്‌സ്‌ട്രാക്റ്റുചെയ്യേണ്ട കാരക്ടേഴ്‌സ് ന്റെ  എണ്ണത്തെ സൂചിപ്പിക്കുന്നു.
+
| ഔട്ട്പുട്ട് '''input filename ''' ഒന്നിലധികം തവണ കാണിക്കുന്നു.
നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.
+
  
 
|-  
 
|-  
| 08:33
+
| 09:37
| '' 'Awkdemo.txt' '' ഫയലിലേക്ക് മാറുക.
+
| കാരണം, ഈ കമാൻഡ് '' 'awkdemo.txt' '' ഫയലിലെ ഓരോ വരിയിലും ഒരു തവണ ഫയൽ നെയിം അച്ചടിക്കുന്നു.
 +
 
 +
ഇത് എങ്ങനെ ഒരു തവണ മാത്രം പ്രിന്റുചെയ്യാനാകും?
  
 
|-  
 
|-  
| 08:37
+
| 09:48
| റോൾ നമ്പറുകളുടെ ആദ്യ അക്ഷരം ആ വിദ്യാർത്ഥി താമസിക്കുന്ന ഹോസ്റ്റൽ കോഡിനെ സൂചിപ്പിക്കുന്നു .
+
| '''terminal'''. ക്ലിയർ ചെയുക .
 +
 
 +
മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന്  '''up arrow ''' കീ അമർത്തുക.
 +
 
 
|-  
 
|-  
| 08:46
+
| 09:55
| ഹോസ്റ്റൽ '''A'''യിൽ താമസിക്കുന്ന വിദ്യാർത്ഥികളുടെ പട്ടിക കണ്ടെത്താൻ ഞങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് പറയുക.
+
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ മുമ്പത്തെ കമാൻഡ് പരിഷ്‌ക്കരിക്കുക.
 +
 
 +
Enterഅമർത്തുക.
  
 
|-  
 
|-  
| 08:52
+
| 10:02
| അത് കിട്ടാൻ , നമുക്ക് '' 'ടെർമിനലിലേക്ക് മാറാം.
+
| ഇപ്പോൾ, നമുക്ക് ഒരു തവണ മാത്രമേ ഫയൽ നെയിം ലഭിക്കൂ.
  
 
|-  
 
|-  
| 08:56
+
| 10:06
| ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
+
| മറ്റ് ചില '''built-in variables ''' ' '' awk '' 'ൽ ഉണ്ട്.
 +
 
 +
അവയെക്കുറിച്ച് കൂടുതലറിയാൻ ദയവായി ഇന്റർനെറ്റ് ബ്രൗസുചെയ്യുക.
  
 
|-  
 
|-  
| 09:00
+
| 10:14
| ഇവിടെ നമ്മൾ '' 'string 1' 'എന്ന് സൂചിപ്പിക്കുന്ന'''string''' എടുക്കുന്നു.
+
| വിജയിച്ച  8000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റുമുള്ള വിദ്യാർത്ഥികളെ കണ്ടെത്താൻ നമ്മൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.
  
 
|-  
 
|-  
| 09:05
+
| 10:22
| '' '$ 1' '' ആദ്യത്തെ '''field'''നെ പ്രതിനിധീകരിക്കുന്നു എന്ന് നമുക്ക് അറിയാം അതാണ് നമ്മുടെ റോൾ നമ്പർ.
+
| '''output field separator'''' ആയി '''comma '''ഉപയോഗിക്കുക.“'''The data is shown for file'''”  പ്രിന്റ് ചെയ്തു ഫയൽ നെയിം '''footer section'''.  ൽ കൊടുക്കുക
 +
 
 +
നമുക്ക് ഇത് എങ്ങനെ ചെയ്യാൻ കഴിയും?
  
 
|-  
 
|-  
| 09:12
+
| 10:36
| അടുത്തതായി, position '''one'''  എന്ന്ആ രംഭിക്കുന്ന ഒരു'''substring''' ക്‌സ്‌ട്രാക്റ്റുചെയ്യുന്നു.
+
|'''terminal'''ൽ, ഇനിപ്പറയുന്ന കമാൻഡ് ടൈപ്പുചെയ്യുക.
 +
 
 +
  '''Enter'''അമർത്തുക.
  
 
|-  
 
|-  
| 09:19
+
| 10:43
| അത് ക്യാപിറ്റൽ '''A''' ക്കു  തുല്യമാണെങ്കിൽ , ഫയലിൽ നിന്നുള്ള ആ വരി പ്രിന്റ് ചെയ്യും .
+
| ഒരു വിദ്യാർത്ഥി മാത്രമാണ് വജയിച്ചതെന്നും 8000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റ് കെട്ടിയത് എന്നും നമുക്ക് കാണാം.
  
ഔട്ട്പുട്ട് കാണുന്നതിന് '''Enter''അമർത്തുക.
+
  റെക്കോർഡ് നമ്പർ 2 ആണ്.
  
 
|-  
 
|-  
| 09:29
+
| 10:53
|ഹോസ്റ്റൽ  '''A'''യാൽ ഉള്ള വിദ്യാർത്ഥികളുടെ ലിസ്റ്റ്  നമുക്ക് ലഭിച്ചു.
+
| ഫയലിന്റെ പേര് '''footer''', ൽ നമുക്ക് കാണാം.
  
 
|-  
 
|-  
| 09:34
+
| 10:58
| '''function split''' നമ്മൾ  നേരത്തെ കണ്ടു.
+
| കൂടുതൽ സങ്കീർണ്ണമായ ജോലികൾക്കായി നമുക്ക് '' 'awk' '' ഉപയോഗിക്കാം.
അത്ഞാ കൊണ്ട് ഞാൻ  ഇവിടെ വിശദാംശങ്ങൾ വിശദീകരിക്കുന്നില്ല.
+
  
 
|-  
 
|-  
| 09:40
+
| 11:03
| നിങ്ങൾക്ക്  സംശയമുണ്ടെങ്കിൽ ദയവായി മുമ്പത്തെ '' 'awk' '' ട്യൂട്ടോറിയലുകൾ നോക്കുക .
+
| അങ്ങനെ എങ്കിൽ ടെർമിനലിൽ ഓരോ തവണയും '''commands'''എഴുതുന്നത് കൂടുതൽ ബുദ്ധിമുട്ടാണ്.
 +
 
 
|-  
 
|-  
| 09:45
+
| 11:09
| '''Input/Output'''.മായി ബന്ധപ്പെട്ട മറ്റ് ചില'''functions''' ഉണ്ട്.
+
| പകരം നമുക്ക് ഒരു പ്രത്യേക ഫയലിൽ '' 'awk' '' പ്രോഗ്രാം എഴുതാം.
  
  '''awk'''.  ൽ '''unix command ''' റൺ ചെയ്യാൻ '''system() function''' നമ്മെ സഹായിക്കുന്നു .
+
|-
 +
| 11:14
 +
| എക്സിക്യൂട്ടു ചെയ്യാൻ , ആ ഫയലിന് '' 'dot awk' '' എക്സ്റ്റൻഷൻ ഉണ്ടായിരിക്കണം.
  
 
|-  
 
|-  
| 09:56
+
| 11:19
| ഇപ്പോൾ,നമ്മൾ '''awk command.''' '''unix command date''' റൺ ചെയ്യും.
+
| എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ, നമുക്ക് ഈ '' 'awk' '' പ്രോഗ്രാം ഫയൽ നെയിം '' 'awk കമാൻഡ് ഉപയോഗിച്ച് വ്യക്തമാക്കണം .
  
 
|-  
 
|-  
| 10:01
+
| 11:26
| ഇവിടെ '''terminal''' ളിൽ  കാണിച്ചിരിക്കുന്നപോലെ കമാൻഡ് ടൈപ്പുചെയ്യുക.'''Enter.''' അമർത്തുക.  
+
| അങ്ങനെ ചെയ്യുന്നതിന്, ഞങ്ങൾ '''hyphen small f''' ഓപ്ഷൻ ഉപയോഗിക്കേണ്ടതുണ്ട്.
  
 +
നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.
 
|-  
 
|-  
| 10: 09
+
| 11:35
| ഇന്നത്തെ തീയതിയും സമയവും .ഔട്ട്പുട്  ആയി '''terminal''' ലിൽ' കാണിക്കും .
+
| ഞാൻ ഇതിനകം ഒരു '' 'awk' '' പ്രോഗ്രാം എഴുതി അതിനെ '' 'prog1 dot awk ആയി സേവ് ചെയ്തു .
 +
 
 
|-  
 
|-  
| 10:15
+
| 11:42
| ഇപ്പോൾ, നമുക്ക് എന്ത് കൊണ്ട്  ഇത് എന്തിന് ആവശ്യമാണ്? '' 'Awk കമാൻഡിന്റെ' '' BEGIN '' 'സെക്ഷൻ  മാത്രമേ നമ്മൾ വച്ചിട്ടുള്ളു .
+
| '''code'''   '''Code Files''' ലിങ്കിലു ലഭ്യമാണ്.
  
 
|-  
 
|-  
| 10:21
+
| 11:46
| യഥാർത്ഥത്തിൽ , ആവശ്യമായ ഔട്ട് പൂറ്  പ്രദർശിപ്പിക്കുന്നതിന് മുമ്പ് '''system date, ''' പ്രിന്റുചെയ്യാൻ നമ്മൾ  ആഗ്രഹിച്ചേക്കാം.
+
|  '''terminal'''.ക്ക് മാറുക.
 +
 
 +
നോക്കൂ, അവസാനമായി എക്സിക്യൂട് ചെയ്ത  '''command ''' ന്റെ  '''single quotes''' ൽ എന്താണ് എഴുതിയത്?
  
 
|-  
 
|-  
| 10:28
+
| 11:55
| അത്തരം സമയങ്ങളിൽ  '''awk command.'''ൽ നിന്ന് '''system commands'''  എക്സിക്യൂട്ട് ചെയ്യേണ്ടതുണ്ട്.
+
| '' 'Prog1.awk' '' ഫയലിന്റെ കണ്ടന്റ് അതെ പോലെയാണ് .
  
 
|-  
 
|-  
| 10:34
+
| 12:00
| '''systime()''', '''strftime() ''',എന്നിങ്ങനെ ഉള്ള  ചില'''functions''' ഉണ്ട്
+
| ഒരേയൊരു വ്യത്യാസം ഉള്ളത് '' 'awk' '' ഫയലിൽ, '''single quotes.'''കൾക്കുള്ളിൽ നമ്മൾ എഴുതിയിട്ടില്ല.
  
 
|-  
 
|-  
| 10:43
+
| 12:07
| '''functions'''. നെ ക്കുറിച്ച് അറിയാൻ ഇന്റർനെറ്റിലൂടെ ബ്ര rowse സ് ചെയ്യുക.
+
| ഫയൽ എക്സിക്യൂട്ട് ചെയ്യുന്നതിന്,'''terminal-''' ൽ ' ടൈപ്പ് ചെയ്യുക.
 +
 
 +
'' 'awk space hyphen small f space prog1.awk space awkdemo.txt' '' എന്നിട്ട് '' 'Enter' '' അമർത്തുക.
  
 
|-  
 
|-  
| 10:48
+
| 12:24
| ഇത് നമ്മെ  ഈ ട്യൂട്ടോറിയലിന്റെ അവസാനഭാഗത്തു എത്തിക്കുന്നു .നമുക്ക് സംഗ്രഹിക്കാം.
+
| മുമ്പ് കണ്ട അതേ ഔട്ട്പുട്ട് നമുക്ക് ലഭിക്കുന്നു.
  
 
|-  
 
|-  
| 10:53
+
| 12:29
| ഈ ട്യൂട്ടോറിയലിൽ വ്യത്യസ്ത തരത്തിലുള്ള '''built-in functions''ഫംഗ്ഷനുകളെക്കുറിച്ച്' '' നമ്മൾ  പഠിച്ചു
+
| അത് കൊണ്ട് ഇതുവഴി നിങ്ങൾക്ക് '' 'awk' '' പ്രോഗ്രാമുകൾ എഴുതാനും ഒന്നിലധികം തവണ ഉപയോഗിക്കാനും കഴിയും.
  
'''Arithmetic functions''',  '''String functions''',  '''Input/Output functions'''  '''Time stamps functions'''
+
|-
 +
| 12:35
 +
| ഇത് നമ്മെ ഈ ട്യൂട്ടോറിയലിന്റെ അവസാനത്തിലേക്ക് കൊണ്ടുവരുന്നു.
 +
 
 +
നമുക്ക് സംഗ്രഹിക്കാം.
  
 
|-  
 
|-  
| 11:06
+
| 12:40
| ഒരു അസൈൻ‌മെൻറ് എന്ന നിലയിൽ ഇവിടെ '' 'awkdemo.txt' '' ഫയലിൽ വിദ്യാർത്ഥിയുടെ പേരിന്റെ  മൂന്നാമത്തെ അക്ഷരമായി  സ്മാൾ  '''u''' ഉള്ള
+
| ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ പഠിച്ചത്-
 +
വിവിധ ഉദാഹരണങ്ങൾ ഉപയോഗിചു കൊണ്ട്
 +
'''Built-in variables''',
  
 +
'''awk script'''  എന്നിവ
 +
  
 
|-  
 
|-  
| 11:13
+
| 12:48
|ഓരോ റെക്കോർഡിന്റെയും അവസാനത്തെ '''field'''പ്രിന്റ് ചെയ്യാൻ  ഒരു '' 'awk' '' പ്രോഗ്രാം എഴുതുക.
+
| ഒരു അസൈൻമെന്റായി-
 +
അഞ്ചാമത്തെ വരിയുടെ അവസാനത്തെ ഫീൽ‌ഡ് '' 'awkdemo.txt' '' ഫയലിൽ‌ അച്ചടിക്കുന്നതിന് ഒരു '' 'awk' '' സ്ക്രിപ്റ്റ് എഴുതുക.
 +
 
 
|-  
 
|-  
| 11:22
+
| 12:58
| ഇനിപ്പറയുന്ന ലിങ്കിലെ വീഡിയോ സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്റ്റിനെ സംഗ്രഹിക്കുന്നു.
+
| '' 'ടെർമിനലിൽ സിസ്റ്റം ഫയൽ' '' / etc / passwd '' 'തുറക്കുക.
  
ദയവായി ഏത് ഡൗൺലോഡ് ചെയ്ത് കാണുക.
+
|-
 +
| 13:05
 +
| അതിലുള്ള എല്ലാ'''separators ''' തിരിച്ചറിയുക.
  
 
|-  
 
|-  
| 11:30
+
| 13:09
| '''Spoken Tutorial Project''' ടീം സ്‌പോക്കൺ ട്യൂട്ടോറിയലുകൾ ഉപയോഗിച്ച് വർക്ക്‌ഷോപ്പുകൾ നടത്തുന്നു.
+
| 20-ാം വരി മുതൽ ഫയൽ പ്രോസസ്സ് ചെയ്യുന്നതിന് ഒരു  '''script ''' എഴുതുക.
കൂടാതെ ഓൺലൈൻ ടെസ്റ്റു പാസാകുന്നവർക്കു  സർട്ടിഫിക്കറ്റുകൾ നൽകുന്നു.
+
 
 +
|-
 +
| 13:15
 +
| അതും 6-ൽ കൂടുതൽ ഫീൽഡുകൾ ഉൾക്കൊള്ളുന്ന വരികൾക്ക് മാത്രം.
 +
 
 +
|-
 +
| 13:20
 +
| ആ പ്രത്യേക വരിയിൽ നിങ്ങൾക്കു  '''line number''',മുഴുവൻ വരിയും ഫീൽഡുകളുടെ എണ്ണവും അച്ചടിക്കണം.
 +
 
 +
|-
 +
| 13:28
 +
| ഇനിപ്പറയുന്ന ലിങ്കിലെ വീഡിയോ '' 'സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ' '' പ്രോജക്റ്റിനെ സംഗ്രഹിക്കുന്നു.
 +
 
 +
ഡൗ ലോഡ് ചെയ്ത് കാണുക.
 +
 
 +
|-
 +
| 13:36
 +
| സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്റ്റ് ടീം സ്‌പോക്കൺ ട്യൂട്ടോറിയലുകൾ ഉപയോഗിച്ച് വർക്ക്‌ഷോപ്പുകൾ നടത്തുകയും സർട്ടിഫിക്കറ്റുകൾ നൽകുകയും ചെയ്യുന്നു.
 +
 
 
കൂടുതൽ വിവരങ്ങൾക്ക്, ഞങ്ങൾക്ക് എഴുതുക.
 
കൂടുതൽ വിവരങ്ങൾക്ക്, ഞങ്ങൾക്ക് എഴുതുക.
  
 
|-  
 
|-  
| 11:43
+
| 13:47
| ഈ ഫോറത്തിൽ നിങളുടെ സമയബന്ധിതമായ ചോദ്യങ്ങൾ പോസ്റ്റുചെയ്യുക.
+
| നിങ്ങളുടെ സമയബന്ധിതമായ ചോദ്യങ്ങൾ ഈ ഫോറത്തിൽ പോസ്റ്റുചെയ്യുക.
  
 
|-  
 
|-  
| 11:47
+
| 13:51
| സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്ടിന് നു ഫണ്ട് കൊടുക്കുന്നത്  നൽകുന്നത് NMEICT, MHRD,ഗവൺമെന്റ് ഓഫ് ഇന്ത്യ എന്നിവരാണ് .
+
| സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്ടിന് ധനസഹായം നൽകുന്നത് '' '' എൻ‌എം‌ഐ‌സി‌ടി, എം‌എച്ച്‌ആർ‌ഡി, ''
ഈ മിഷൻ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ഈ ലിങ്കിൽ ലഭ്യമാണ്.
+
 
 +
ഈ മിഷൻ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ഈ ലിങ്കിൽ ലഭ്യമാണ്.
  
 
|-  
 
|-  
| 11:59
+
| 14:03
| ഇത് ഐ ഐ ടി ബോംബെ യിൽ നിന്നും വിജി നായർ ,പങ്കു
+
| ഇത് ഐഐടി ബോംബെയിൽ നിന്നുള്ള വിജി നായർ . സൈൻ ഓഫ് ചെയ്യുന്നു.
ചേർന്നതിന് നന്ദി
+
 
 +
ചേർന്നതിന് നന്ദി.
  
 
|}
 
|}

Revision as of 12:04, 17 July 2019

Time
Narration
00:01 awk built-in variables awk script. എന്ന സ്പോക്കൺ ട്യൂട്ടോറിയലിലേക്കു സ്വാഗതം.
00:07 ഈ ട്യൂട്ടോറിയലിൽ, Built-in variables , awk script.എന്നിവയെക്കുറിച്ച് നമ്മൾ പഠിക്കും.
00:14 ചില ഉദാഹരണങ്ങളിലൂടെ നമ്മൾ ഇത് ചെയ്യും.
00:17 ഈ ട്യൂട്ടോറിയൽ റെക്കോർഡുചെയ്യാൻ, ഞാൻ ഇത് ഉപയോഗിക്കുന്നു:

Ubuntu Linux 16.04 Operating System gedit text editor 3.20.1

00:30 ഈ ട്യൂട്ടോറിയലിൽ ഉപയോഗിച്ചിരിക്കുന്ന ഫയലുകൾ ഈ ട്യൂട്ടോറിയൽ പേജിലെ Code Files ലിങ്കിൽ ലഭ്യമാണ്.

അവ ഡൗൺലോഡ് ചെയ്ത് ഉപയോഗിക്കുക.

00:40 ഈ ട്യൂട്ടോറിയൽ‌ അഭ്യസിക്കുവാൻ , നിങ്ങൾ‌ക്കു ഈ വെബ്‌സൈറ്റിലെ മുമ്പത്തെ 'awk tutorials' 'അറിഞ്ഞിരിക്കണം .
00:47 ഇല്ലെങ്കിൽ, ദയവായി ഈ വെബ്‌സൈറ്റിലെ ബന്ധപ്പെട്ട ട്യൂട്ടോറിയലുകൾ കാണുക .
00:52 ആദ്യം, നമുക്ക് ' awk ' built-in variables നോക്കാം.
00:57 Capital RS ഒരുinput ഫയലിലെ record separatorആണ് . ഡീഫാൾട് ആയി , ഇത്newline. ആണ്.
01:07 Capital FS ഒഒരുinput ഫയലിലെ field separator ആണ് .
01:13 ഡിഫാൾട്ട് ആയി 'FS' എന്നതിന്റെ മൂല്യം ഒരു whitespace.ആണ്.
01:18 Capital ORS output record separator.ഡിഫൈൻ ചെയുന്നു .

ഡീഫാൾട് ആയി, ഇത്newline ആണ്.

01:27 Capital OFS output field separator. നെ ഡിഫൈൻ ചെയുന്നു .

ഡിഫാൾട് ആയി ഇത് whitespace.ആണ്.

01:36 ഇവ ഓരോന്നിന്റെയും അർത്ഥം നമുക്ക് മനസ്സിലാക്കാം.
01:40 ഇപ്പോൾ നമുക്ക് 'awkdemo' ഫയൽ നോക്കാം.
01:44 ഞങ്ങൾ ഈ 'awkdemo' ഫയൽ 'awk' command, ഉപയോഗിച്ച് പ്രോസസ്സ് ചെയ്യുമ്പോൾ, ഇത് നമ്മുടെ input file.ഫയലായി മാറുന്നു.
01:51 എല്ലാ record കളും പരസ്പരം ഒരു newline character. കൊണ്ട് വേർതിരിച്ചിട്ടുണ്ടെന്ന് നോക്കുക .
01:58 newline record separator RS variable. ന്റെ ഡിഫാൾട് മൂല്യം ആണ് .

അതിനാൽ, മറ്റൊന്നും ചെയ്യേണ്ടതില്ല

02:08 എല്ലാ fields കളും pipe ചിഹ്നത്താൽ വേർതിരിച്ചിരിക്കുന്നതായി ശ്രദ്ധിക്കുക.

ഇതിനെക്കുറിച്ച് നമുക്ക് എങ്ങനെ 'awk' എന്നതിനെ അറിയിക്കാൻ കഴിയും?

നമുക്ക് നോക്കാം.

02:18 ഡിഫാൾട്ഏ ആയി അത് spaces അല്ലെങ്കിൽ tab', fields. നെ വേർതിരിക്കുന്നു.
02:24 നമ്മുടെ മുമ്പത്തെ ട്യൂട്ടോറിയലുകളിൽ പഠിച്ചതുപോലെ hyphen capital Fഓപ്ഷന്റെ സഹായത്തോടെ നമുക്ക് ഇത് റീസെറ്റ് ചെയ്യാൻ കഴിയും.
02:33 അല്ലെങ്കിൽ, നമുക്ക് ഇത് FS variable ഉപയോഗിച്ച് BEGIN സെക്ഷൻ ൽ റീസെറ്റ് ചെയ്യാൻ കഴിയും.
02:40 നമുക്ക് ഇത് ഒരു ഉദാഹരണത്തിലൂടെ നോക്കാം .

എനിക്ക് 5000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റ് ലഭിക്കുന്ന വിദ്യാർത്ഥികളുടെ പേര് കണ്ടെത്തണമെന്ന് കരുതുക.

02:51 'CTRL, ALT' , 'T' കീകൾ അമർത്തിterminal തുറക്കുക.
02:57 നിങ്ങൾ cd command. ഉപയോഗിച്ച് Code Filesഡൗൺലോഡ് ചെയ്തു എക്‌സ്‌ട്രാക്റ്റുചെയ്ത ഫോൾഡർ ലേക്ക് പോകുക
03:04 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
03:08 ഇവിടെ, BEGIN section,ൽ, 'FS' ന്റെ മൂല്യം ഒരു pipe ചിഹ്നമായി നമ്മൾ നൽകി.

അതുപോലെ, നമുക്ക് RS variable.മോഡിഫൈ ചെയ്യാനും കഴിയും.

03:19 command. എക്സിക്യൂട്ട് ചെയ്തു Enter അമർത്തുക .
03:23 സ്റ്റൈപ്പന്റായി 5000 രൂപയിൽ കൂടുതൽ ലഭിക്കുന്ന വിദ്യാർത്ഥികളുടെ ലിസ്റ്റു ഔട്ട്പുട്ട് കാണിക്കുന്നു.
03:30 ഇവിടെ, name ഫീൽഡ് stipend ഫീൽഡ് എന്നിവ space.ഉപയോഗിച്ച് വേർതിരിക്കുന്നു.
03:36 കൂടാതെ, എല്ലാrecords ' ' newline character.കൊണ്ട് വേർതിരിച്ചിരിക്കുന്നു.'
03:42 output field separator നായി colon നമ്മൾ ആഗ്രഹിക്കുന്നു എന്ന് കരുതുക.

output record separator ആയി ഡബിൾ newline

03:52 നമുക്ക് ഇത് എങ്ങനെ ചെയ്യാൻ കഴിയും? നമുക്ക് നോക്കാം.
03:55 മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് terminal,ൽ, 'അപ് ആരോ കീ അമർത്തുക.
04:01 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് മോഡിഫൈ ചെയുക .

തുടർന്ന് Enter.അമർത്തുക.

04:08 ഔട്ട്പുട്ട് ആഗ്രഹിക്കുന്ന ഫോർമാറ്റിൽ നമുക്ക് ലഭിക്കും.
04:12 ഇപ്പോൾ, നമ്മുടെ പുതിയ ഇൻപുട്ട് ഫയൽ 'sample.txt ആണെന്ന് കരുതുക.
04:18 ഇവിടെ field separator , newline എന്നതും record separator ഡബിൾ newline.ഉം ആണ് .
04:27 ഈ ഫയലിൽ നിന്ന് നമുക്ക് എങ്ങനെ roll no.ഉം name ഉം എക്‌സ്‌ട്രാക്റ്റുചെയ്യാനാകും
04:32 അതെ, നിങ്ങൾഊഹിച്ചതു ശരി ആണ്FS' RS variablesമോഡിഫൈ ചെയ്യണം .
04:39 ഈ ട്യൂട്ടോറിയൽ താൽകാലം നിർത്തി ഇത് ഒരു അസൈൻമെന്റായി ചെയ്യുക.
04:43 അടുത്തതായി, മറ്റ്built-in variables. നമുക്ക് നോക്കാം.
04:47 Capital NR എന്നത് 'awk' 'പ്രോസസ്സ് ചെയ്ത റെക്കോർഡുകളുടെ എണ്ണം ' നൽകുന്നു.
04:53 Capital NF നിലവിലെ റെക്കോർഡിൽ‌ ഫീൽ‌ഡുകളുടെ എണ്ണം നൽകുന്നു.
04:59 ഇതിൽ ഒരു ഉദാഹരണം നോക്കാം.

ഫയലിൽ അപൂർണ്ണമായ വരികൾ കണ്ടെത്താൻ നമ്മൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.

05:07 ഇവിടെ, പൂർണ്ണമല്ലാത്ത വരി എന്നതു കൊണ്ട് അർത്ഥമാക്കുന്നത് സാധാരണ 6 ഫീൽഡുകളേക്കാൾ കുറവാണ്.
05:13 'ടെർമിനലിലേക്ക് മാറുക. 'Ctrl' , 'L' 'കീകൾ അമർത്തി ടെർമിനൽക്ലിയർ ചെയുക .
05:20 കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പ് ചെയ്യുക.
05:24 ഫീൽഡുകൾ'pipe ചിഹ്നം കൊണ്ട് വേർതിരിക്കുന്നതിനാൽ,BEGIN സെക്ഷൻ ൽ FS മൂല്യം pipe ചിഹ്നമായി സെറ്റു ചെയുക .
05:33 അടുത്തതായി നമ്മൾ NF not equal to 6 എന്ന് എഴുതി .
05:37 നിലവിലെ വരിയിലെ ഫീൽഡുകളുടെ എണ്ണം 6 എന്നതിന് തുല്യമല്ലേ എന്ന് ഇത് പരിശോധിക്കുന്നു.
05:43 ശരിയാണെങ്കിൽ, print സെക്ഷൻ എന്ന് സൂചിപ്പിക്കുന്ന മുഴുവൻ ലൈനിനൊപ്പം റെക്കോർഡിന്റെ ലൈൻ നമ്പർ NR പ്രിന്റ് ചെയ്യും.

Enter അമർത്തുക.

05:55 Out ട്ട്‌പുട്ട് 'ൽ, റെക്കോർഡ് നമ്പർ 16 അപൂർണ്ണമായ റെക്കോർഡാണെന്ന് നമുക്ക് കാണാൻ കഴിയും.

ഇതിന് 6 ന് പകരം 5 ഫീൽഡുകൾ' മാത്രമേയുള്ളൂ.

06:05 നമുക്ക് ഒരു ഉദാഹരണം കൂടി നോക്കാം.

എത്ര fieldsപരിഗണിക്കാതെ തന്നെ ഓരോ വിദ്യാർത്ഥിക്കും ആദ്യത്തേതും അവസാനത്തേതുമായ field എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?

06:16 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ terminalൽ കമാൻഡ് ടൈപ്പുചെയ്യുക.
06:21 ഇവിടെ നമ്മൾ FS വേരിയബിൾ സെറ്റു ചെയ്യുന്നതിന് പകരം hyphen capital Fഓപ്ഷൻ ഉപയോഗിച്ചു.

Enter.അമർത്തുക.

06:30 ഫയലിലെ ഓരോ റെക്കോർഡിനും നമുക്ക് ആദ്യത്തേതും അവസാനത്തേതുമായ fields മാത്രമേ ലഭിക്കൂ.
06:36 ഇപ്പോൾ മറ്റെന്തെങ്കിലും ശ്രമിക്കാം.
06:39 demo1.txt ',' demo2।txt 'എന്നീ രണ്ട് ഫയലുകളിൽ വിദ്യാർത്ഥികളുടെ റെക്കോഡുകൾ ഉണ്ടെന്നു കരുതുക .
06:48 ഈ രണ്ട് ഫയലുകളിൽ നിന്നും ആദ്യത്തെ 3 വരികൾ അച്ചടിക്കാൻ നമ്മൾ ആഗ്രഹിക്കുന്നു.

'NR' വേരിയബിൾ ഉപയോഗിച്ച് നമുക്ക് ഇത് ചെയ്യാം .

06:57 രണ്ട് ഫയലുകളുടെ കണ്ടെന്റ്സ് ഇതാ.
07:02 ഇപ്പോൾ, ഓരോ ഫയലി ലെയും ആദ്യത്തെ 3 വരികൾ പ്രദർശിപ്പിക്കുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ്terminal.ൽ ടൈപ്പ് ചെയ്യുക.
07:11 Enter. അമർത്തുക.
07:13 ।ഔട്ട്പുട്ട് 'demo1।txt' ഫയലിന്റെ ആദ്യ 3 റെക്കോർഡുകൾ മാത്രം കാണിക്കുന്നു.
07:20 രണ്ടാമത്തെ ഫയലിനും ഇത് എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?
07:24 'NR' 'എന്നതിനുപകരം' FNR 'ഉപയോഗിക്കുന്നതാണ് സൊല്യൂഷൻ .

നിലവിലെ ഫയലിലെ current record number 'FNR' ആണ് .

07:34 ഓരോ തവണയും ഒരു പുതിയ റെക്കോർഡ് വായിക്കുമ്പോൾ 'FNR' വർദ്ധിക്കും.
07:39 ഓരോ തവണയും ഒരു പുതിയ ഇൻപുട്ട് ഫയൽ ആരംഭിക്കുമ്പോൾ അത് പൂജ്യമായി വീണ്ടും ഇനിഷ്യലൈസ് ചെയ്യും .
07:46 പ്രോഗ്രാം എക്സിക്യൂഷൻ ആരംഭിച്ചതുമുതൽ awk പ്രോസസ്സ് ചെയ്ത ഇൻപുട്ട് റെക്കോർഡുകളുടെ എണ്ണമാണ് NR
07:55 ഒരു പുതിയ ഫയൽ ഉപയോഗിച്ച് ഇത് പൂജ്യത്തിലേക്ക് റീ സെറ്റു ചെയ്യുന്നില്ല .
07:59 terminal.ലേക്ക് മാറുക.

മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് up arrow കീ അമർത്തുക.

08:06 മുമ്പത്തെ കമാൻഡ് ഇനിപ്പറയുന്ന രീതിയിൽ മോഡിഫൈ ചെയുക .

'NR എന്നതിനുപകരം' FNR 'എന്ന് ടൈപ്പുചെയ്യുക.

08:14 NR, നു അടുത്തായി Print സെക്ഷൻ ൽ, 'ടൈപ്പ് ചെയ്യുക FNR.Enter.അമർത്തുക.
08:21 നോക്കൂ, നമുക്ക് ഇപ്പോൾ ശരിയായ ഔട്ട്പുട്ട് ലഭിക്കുന്നു.

പുതിയ ഫയലിനൊപ്പം 'FNR' പൂജ്യമായി സെറ്റു ചെയ്തിട്ടു ഉണ്ടെൻകിലും 'NR' വർദ്ധിച്ചുകൊണ്ടിരിക്കുന്നു.

08:31 ഇനി നമുക്ക് ചില built-in variables. നോക്കാം.

'FILENAME' വേരിയബിൾ വായിക്കുന്ന ഫയലിന്റെ പേര് നൽകുന്നു.

08:40 'ARGC' കമാൻഡ് ലൈനിൽ നൽകിയിട്ടുള്ള arguments കളുടെ എണ്ണം വ്യക്തമാക്കുന്നു.
08:46 'ARGV' കമാൻഡ് ലൈൻ ആർഗ്യുമെന്റുകൾ സംഭരിക്കുന്ന ഒരു array പ്രതിനിധീകരിക്കുന്നു.
08:52 ENVIRONഷെൽ എൻ‌വയോൺ‌മെൻറ് വേരിയബിളുകളുടെ array യും ബന്ധപ്പെട്ട മൂല്യങ്ങളും വ്യക്തമാക്കുന്നു.
09:00 'ARGV' ',' ENVIRON 'എന്നിവ awk, എന്നതി ലെ array ഉപയോഗിക്കുന്നതിനാൽ നമ്മൾ അവ അടുത്ത ട്യൂട്ടോറിയലിൽ നോക്കും .
09:09 നമുക്ക് ഇപ്പോൾ 'FILENAME' എന്ന വേരിയബിൾ നോക്കാം.

പ്രോസസ്സ് ചെയ്യുന്ന നിലവിലെ ഫയലിന്റെ പേര് എങ്ങനെ പ്രിന്റുചെയ്യാനാകും?

09:18 terminal ലേക്ക് മാറി കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ടൈപ്പുചെയ്യുക.
09:23 ഇവിടെ space എന്നത് ഒരു string concatenation operator.ആയി ഉപയോഗിച്ചു.'
command. എക്സിക്യൂട്ട് ചെയ്യാൻ  'Enter'  അമർത്തുക .....
09:32 ഔട്ട്പുട്ട് input filename ഒന്നിലധികം തവണ കാണിക്കുന്നു.
09:37 കാരണം, ഈ കമാൻഡ് 'awkdemo.txt' ഫയലിലെ ഓരോ വരിയിലും ഒരു തവണ ഫയൽ നെയിം അച്ചടിക്കുന്നു.

ഇത് എങ്ങനെ ഒരു തവണ മാത്രം പ്രിന്റുചെയ്യാനാകും?

09:48 terminal. ക്ലിയർ ചെയുക .

മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് ലഭിക്കുന്നതിന് up arrow കീ അമർത്തുക.

09:55 ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ മുമ്പത്തെ കമാൻഡ് പരിഷ്‌ക്കരിക്കുക.

Enterഅമർത്തുക.

10:02 ഇപ്പോൾ, നമുക്ക് ഒരു തവണ മാത്രമേ ഫയൽ നെയിം ലഭിക്കൂ.
10:06 മറ്റ് ചില built-in variables ' awk 'ൽ ഉണ്ട്.

അവയെക്കുറിച്ച് കൂടുതലറിയാൻ ദയവായി ഇന്റർനെറ്റ് ബ്രൗസുചെയ്യുക.

10:14 വിജയിച്ച 8000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റുമുള്ള വിദ്യാർത്ഥികളെ കണ്ടെത്താൻ നമ്മൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.
10:22 output field separator' ആയി comma ഉപയോഗിക്കുക.“The data is shown for file” പ്രിന്റ് ചെയ്തു ഫയൽ നെയിം footer section. ൽ കൊടുക്കുക

നമുക്ക് ഇത് എങ്ങനെ ചെയ്യാൻ കഴിയും?

10:36 terminalൽ, ഇനിപ്പറയുന്ന കമാൻഡ് ടൈപ്പുചെയ്യുക.
Enterഅമർത്തുക.
10:43 ഒരു വിദ്യാർത്ഥി മാത്രമാണ് വജയിച്ചതെന്നും 8000 രൂപയിൽ കൂടുതൽ സ്റ്റൈപ്പന്റ് കെട്ടിയത് എന്നും നമുക്ക് കാണാം.
റെക്കോർഡ് നമ്പർ 2 ആണ്.
10:53 ഫയലിന്റെ പേര് footer, ൽ നമുക്ക് കാണാം.
10:58 കൂടുതൽ സങ്കീർണ്ണമായ ജോലികൾക്കായി നമുക്ക് 'awk' ഉപയോഗിക്കാം.
11:03 അങ്ങനെ എങ്കിൽ ടെർമിനലിൽ ഓരോ തവണയും commandsഎഴുതുന്നത് കൂടുതൽ ബുദ്ധിമുട്ടാണ്.
11:09 പകരം നമുക്ക് ഒരു പ്രത്യേക ഫയലിൽ 'awk' പ്രോഗ്രാം എഴുതാം.
11:14 എക്സിക്യൂട്ടു ചെയ്യാൻ , ആ ഫയലിന് 'dot awk' എക്സ്റ്റൻഷൻ ഉണ്ടായിരിക്കണം.
11:19 എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ, നമുക്ക് ഈ 'awk' പ്രോഗ്രാം ഫയൽ നെയിം 'awk കമാൻഡ് ഉപയോഗിച്ച് വ്യക്തമാക്കണം .
11:26 അങ്ങനെ ചെയ്യുന്നതിന്, ഞങ്ങൾ hyphen small f ഓപ്ഷൻ ഉപയോഗിക്കേണ്ടതുണ്ട്.

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

11:35 ഞാൻ ഇതിനകം ഒരു 'awk' പ്രോഗ്രാം എഴുതി അതിനെ 'prog1 dot awk ആയി സേവ് ചെയ്തു .
11:42 code Code Files ലിങ്കിലു ലഭ്യമാണ്.
11:46 terminal.ക്ക് മാറുക.

നോക്കൂ, അവസാനമായി എക്സിക്യൂട് ചെയ്ത command ന്റെ single quotes ൽ എന്താണ് എഴുതിയത്?

11:55 'Prog1.awk' ഫയലിന്റെ കണ്ടന്റ് അതെ പോലെയാണ് .
12:00 ഒരേയൊരു വ്യത്യാസം ഉള്ളത് 'awk' ഫയലിൽ, single quotes.കൾക്കുള്ളിൽ നമ്മൾ എഴുതിയിട്ടില്ല.
12:07 ഫയൽ എക്സിക്യൂട്ട് ചെയ്യുന്നതിന്,terminal- ൽ ' ടൈപ്പ് ചെയ്യുക.

'awk space hyphen small f space prog1.awk space awkdemo.txt' എന്നിട്ട് 'Enter' അമർത്തുക.

12:24 മുമ്പ് കണ്ട അതേ ഔട്ട്പുട്ട് നമുക്ക് ലഭിക്കുന്നു.
12:29 അത് കൊണ്ട് ഇതുവഴി നിങ്ങൾക്ക് 'awk' പ്രോഗ്രാമുകൾ എഴുതാനും ഒന്നിലധികം തവണ ഉപയോഗിക്കാനും കഴിയും.
12:35 ഇത് നമ്മെ ഈ ട്യൂട്ടോറിയലിന്റെ അവസാനത്തിലേക്ക് കൊണ്ടുവരുന്നു.

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

12:40 ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ പഠിച്ചത്-

വിവിധ ഉദാഹരണങ്ങൾ ഉപയോഗിചു കൊണ്ട് Built-in variables,

awk script എന്നിവ


12:48 ഒരു അസൈൻമെന്റായി-

അഞ്ചാമത്തെ വരിയുടെ അവസാനത്തെ ഫീൽ‌ഡ് 'awkdemo.txt' ഫയലിൽ‌ അച്ചടിക്കുന്നതിന് ഒരു 'awk' സ്ക്രിപ്റ്റ് എഴുതുക.

12:58 'ടെർമിനലിൽ സിസ്റ്റം ഫയൽ' / etc / passwd 'തുറക്കുക.
13:05 അതിലുള്ള എല്ലാseparators തിരിച്ചറിയുക.
13:09 20-ാം വരി മുതൽ ഫയൽ പ്രോസസ്സ് ചെയ്യുന്നതിന് ഒരു script എഴുതുക.
13:15 അതും 6-ൽ കൂടുതൽ ഫീൽഡുകൾ ഉൾക്കൊള്ളുന്ന വരികൾക്ക് മാത്രം.
13:20 ആ പ്രത്യേക വരിയിൽ നിങ്ങൾക്കു line number,മുഴുവൻ വരിയും ഫീൽഡുകളുടെ എണ്ണവും അച്ചടിക്കണം.
13:28 ഇനിപ്പറയുന്ന ലിങ്കിലെ വീഡിയോ 'സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ' പ്രോജക്റ്റിനെ സംഗ്രഹിക്കുന്നു.

ഡൗ ലോഡ് ചെയ്ത് കാണുക.

13:36 സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്റ്റ് ടീം സ്‌പോക്കൺ ട്യൂട്ടോറിയലുകൾ ഉപയോഗിച്ച് വർക്ക്‌ഷോപ്പുകൾ നടത്തുകയും സർട്ടിഫിക്കറ്റുകൾ നൽകുകയും ചെയ്യുന്നു.

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

13:47 നിങ്ങളുടെ സമയബന്ധിതമായ ചോദ്യങ്ങൾ ഈ ഫോറത്തിൽ പോസ്റ്റുചെയ്യുക.
13:51 സ്‌പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്ടിന് ധനസഹായം നൽകുന്നത് എൻ‌എം‌ഐ‌സി‌ടി, എം‌എച്ച്‌ആർ‌ഡി,

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

14:03 ഇത് ഐഐടി ബോംബെയിൽ നിന്നുള്ള വിജി നായർ . സൈൻ ഓഫ് ചെയ്യുന്നു.

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

Contributors and Content Editors

Vijinair