Difference between revisions of "Linux-AWK/C2/MultiDimensional-Array-in-awk/Malayalam"
Line 173: | Line 173: | ||
|- | |- | ||
| 04:34 | | 04:34 | ||
− | | | '''indices ''' കളുടെ എല്ലാ സീക്വൻസും | + | | | '''indices ''' കളുടെ എല്ലാ സീക്വൻസും പരാന്തിസിസിൽ എഴുതി കോമ കൊണ്ട് വേര് തിരിക്കണം |
|- | |- |
Revision as of 14:25, 17 July 2019
|
|
00:01 | ഹലോ, awk ലെ multidimensional arrays എന്ന സ്പോക്കൺ ട്യൂട്ടോറിയലിലേക്ക് സ്വാഗതം. |
00:07 | ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ awk ൽ multidimensional array ഉണ്ടാക്കി multidimensional array സ്കാൻ ചെയ്യാൻ പഠിക്കും. |
00:18 | ചില ഉദാഹരണങ്ങളിലൂടെ ഞങ്ങൾ ഇത് ചെയ്യും. |
00:21 | ഈ ട്യൂട്ടോറിയൽ റെക്കോർഡുചെയ്യാൻ, ഞാൻ Ubuntu Linux 16.04 Operating System gedit text editor 3.20.1എന്നിവ ഉപയോഗിക്കുന്നു |
00:33 | നിങ്ങൾക്ക് ഇഷ്ടമുള്ള ഏത് എങ്കിലും ടെക്സ്റ്റ് എഡിറ്ററും ഉപയോഗിക്കാം. |
00:37 | ഈ ട്യൂട്ടോറിയൽ അഭ്യസിക്കുന്നതിന്, നിങ്ങൾ ഈ വെബ്സൈറ്റിലെ array എന്നതിനെ കുറിച്ച് ഉള്ള മുമ്പത്തെ awk 'ട്യൂട്ടോറിയലുകൾ അറിഞ്ഞിരിക്കണം . |
00:45 | C അല്ലെങ്കിൽ C++. പോലുള്ള ഏതെങ്കിലും പ്രോഗ്രാമിംഗ് ലാങ്ക്വേജ് നെ കുറിച്ച് നിങ്ങൾക്ക് അടിസ്ഥാന അറിവ് ഉണ്ടായിരിക്കണം. |
00:52 | ഇല്ലെങ്കിൽ, ദയവായി ഞങ്ങളുടെ വെബ്സൈറ്റിലെ പ്രസക്തമായ 'ട്യൂട്ടോറിയലുകൾ കാണുക . |
00:58 | ഈ ട്യൂട്ടോറിയലിൽ ഉപയോഗിച്ചിരിക്കുന്ന ലിങ്കുകൾ ഈ ട്യൂട്ടോറിയൽ പേജിലെ Code Filesലിങ്കിൽ ലഭ്യമാണ്.
അവ ഡൗൺലോഡ് ചെയ്ത് എക്സ്ട്രാക്റ്റുചെയ്യുക. |
01:08 | എന്താണ് 'awk' ലെ multidimensional array ? |
01:12 | single dimensional arrays, ൽ ഒരുarray element ഒരൊറ്റ index.ലൂടെ ആണ് തിരിച്ചറിയുന്നതു എന്ന് നമുക്കറിയാം. |
01:19 | ഉദാഹരണത്തിന് array week സിംഗിൾ index, day.ഉപയോഗിച്ച് തിരിച്ചറിയാം . |
01:26 | എന്നിരുന്നാലും multidimensional array, യിൽ ഒരു element ഒന്നിലധികംindices. കളുടെ ഒരു സീക്വൻസ് ഉപയോഗിച്ച് തിരിച്ചു അറിയും . |
01:34 | ഉദാഹരണത്തിന്,ഒരു two dimensional array element യിൽ 2 indices. ഒരു സീക്വൻസ് ഉപയോഗിച്ച്തിരിച്ചു അറിയും |
01:42 | ഇവിടെ,multiple indices ഒരൊറ്റ string, ലേക്ക് യോജിപ്പിച്ചിരിക്കുന്നു, അവയ്ക്കിടയിൽseparator ഉണ്ട്. |
01:50 | separator എന്നത് built-in variable SUBSEP. ന്റെ മൂല്യമാണ്. |
01:55 | ഒരു സിംപിൾ one dimensional array. യിൽ കാമ്പൈൻഡ് string ഒരു ' single index ആയി സൂചികയായി ഉപയോഗിക്കുന്നു. |
02:01 | ഉദാഹരണത്തിന്, നമ്മൾ multi within square brackets 4 comma 6 equal to value in double quotes
എഴുതുന്നുവെന്ന് കരുതുക. |
02:11 | ഇവിടെmulti എന്നത് multi-dimensional array. യുടെ പേരാണ്.
തുടർന്ന്,4 and 6 എന്നീ സംഖ്യകൾ ഒരു string.ലേക്ക് മാറ്റുന്നു . |
02:21 | SUBSEP 'ന്റെ മൂല്യംhash symbol (#).എന്ന് കരുതുക. |
02:26 | തുടർന്ന്, ഈ സംഖ്യകൾ അവയ്ക്കിടയിൽ ഒരു hash symbol (#). ആയി യോജിപ്പിച്ചിരിക്കുന്നു. |
02:32 | അതിനാൽ, array element multi within square brackets within double quotes 4 hash 6 എന്നത് value within double quotes.എന്ന് സ്റ് ചെയ്തു . |
02:43 | SUBSEP ന്റെ ഡിഫാൾട് മൂല്യം string within double quotes backslash 034. ആണ് |
02:50 | ഇത് യഥാർത്ഥത്തിൽ ഒരുnonprinting character. കാരക്ടർ ആണ് .
ഇത് സാധാരണയായി മിക്ക ഇൻപുട്ട് ഡാറ്റയിലും ദൃശ്യമാകില്ല. |
02:58 | സ്ലൈഡിൽ കാണിച്ചിരിക്കുന്നതുപോലെ ഒരു two dimensional array ഡിക്ലയർ ചെയ്യാൻ നോക്കാം . |
03:03 | റോ 1 എന്നതിൽ എലെമെന്റ്സ് A Bഎന്നിവ അടങ്ങിയിരിക്കുന്നു |
03:08 | റോ 2 എന്നതിൽ 'C and D'എന്നീ രണ്ട്എലെമെന്റ്സ് |
03:12 | 'Ctrl' ',' Alt ',' 'T' 'കീകൾ അമർത്തി terminal തുറക്കുക |
03:17 | cd command ഉപയോഗിച്ച് നിങ്ങൾ Code Files ഡൗൺലോഡ്എ ചെയ്ത ക്സ്ട്രാക്റ്റുചെയ്ത ഫോൾഡർ ലേക്ക് പോകുക . |
03:24 | ഇപ്പോൾ array ഡിഫൈൻ ചെയുക . ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ശ്രദ്ധാപൂർവ്വം ടൈപ്പുചെയ്യുക.
തുടർന്ന് Enter.അമർത്തുക. |
03:35 | നമുക്ക് ക്ക് ഒരു command prompt ഒരു error. കൂടാതെ തിരികെ ലഭിക്കുന്നു.
അതിനാൽ, array ഡിഫൈൻ ചെയ്തിരിക്കുന്നു . |
03:41 | കോഡിൽ പ്രിന്റുചെയ്യാൻ നമ്മൾ ഒന്നും നൽകിയിട്ടില്ലാത്തതിനാൽ നമുക്ക് ഔട്ട്പുട്ട് ലഭിക്കുന്നില്ല. |
03:47 | നമുക്ക് print statement.ചേർക്കാം. |
03:50 | മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡ് terminal. ൽ ലഭിക്കുന്നതിന് അപ് ആരോ കീ അമർത്തുക. |
03:56 | curly bracket, ക്ലോസ് ചെയുന്ന തൊട്ടുമുമ്പ്, semicolon space print space a within square brackets 2 comma 2 എന്ന് ടൈപ്പ് ചെയുക
കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് 'Enter' അമർത്തുക. |
04:13 | ശ്രദ്ധിക്കുക, നമുക്ക് capital D. ഔട്ട്പുട്ട് ആയി കിട്ടി |
04:18 | തന്നിരിക്കുന്ന multidimensional array യിൽ ഒരു പ്രത്യേക index sequence ഉണ്ടോയെന്ന് എങ്ങനെ പരിശോധിക്കും? |
04:25 | നമുക്ക് in operator.ഉപയോഗിക്കാം. |
04:28 | ഈ സീരീസ് ലെ മുമ്പത്തെ single-dimensional array യിൽ നമ്മൾ ഇതിനകം കണ്ടു. |
04:34 | indices കളുടെ എല്ലാ സീക്വൻസും പരാന്തിസിസിൽ എഴുതി കോമ കൊണ്ട് വേര് തിരിക്കണം |
04:42 | നമുക്ക് ഇത് ഒരു ഉദാഹരണത്തിലൂടെ നോക്കാം . |
04:45 | ഞാൻ ഇതിനകം 'test_multi.awk' 'എന്ന പേരിൽ ഒരു സ്ക്രിപ്റ്റ് എഴുതിയിട്ടുണ്ട്. |
04:51 | ഈ ട്യൂട്ടോറിയൽ പേജിന്റെ Code Filesലിങ്കിലു ഇത് ലഭ്യമാണ്. |
04:56 | നമ്മുടെ മുമ്പത്തെ ചർച്ചയിൽ കണ്ടതുപോലെ ഞാൻ ഒരു2 by 2 array ഡിഫൈൻ ചെയ്തു . |
05:02 | രണ്ട് if conditions.എഴുതിയിട്ടുണ്ട്. |
05:06 | ആദ്യത്തെ if condition ൽ index one comma one, ലെ element ഉണ്ടോയെന്ന് പരിശോധിക്കുന്നു. |
05:13 | പരാൻതീസിസിനുള്ളിൽ multidimensional array ക്കു വേണ്ടി നമ്മൾ index എഴുതണം. |
05:18 | condition true ആണെങ്കിൽ, അത്one comma one is present പ്രിന്റുചെയ്യും. |
05:23 | അല്ലെങ്കിൽ one comma one is absent. എന്ന് പ്രിന്റുചെയ്യും. |
05:28 | അതുപോലെ, index three comma one.എന്നതിൽ element ഉണ്ടോ എന്ന് ചെക് ചെയ്യും
നമുക്ക് ഫയൽ എക്സിക്യൂട്ട് ചെയ്യാം. |
05:36 | 'ടെർമിനലിലേക്ക്' 'മാറി ടൈപ്പ് ചെയ്യുകawk space hyphen small f space test underscore multi dot awk Enter. അമർത്തുക. |
05:49 | one comma one is present three comma one is absent. എന്ന് ഔട്ട്പുട്ട് പറയുന്നു . |
05:55 | നമുക്ക് ഒരു ഉദാഹരണം കൂടി നോക്കാം.
ഒരു matrix. ന്റെ transpose സൃഷ്ടിക്കാൻ നമ്മൾ ആഗ്രഹിക്കുന്നുവെന്ന് പറയുക. |
06:02 | ഒരു matrix ന്റെ transpose ഉണ്ടാകുന്നത് ,'matrix. ന്റെ rows columns എന്നിവ
പരസ്പരം മാറ്റുമ്പോൾ ആണ് നമുക്ക് ഇത് എങ്ങനെ ചെയ്യാൻ കഴിയും? |
06:11 | 2D-array.txt ഫയലിൽ ഞാൻ ഒരു two-dimensional array matrix സൃഷ്ടിച്ചു. |
06:19 | ഞാൻ 'transpose.awk' 'എന്ന പേരിൽ ഒരു കോഡ് എഴുതി |
06:24 | awk script. ന്റെaction section നോക്കുക. |
06:29 | ഇവിടെ നമ്മൾ ഒരു row. യിലെ ഫീൽഡുകളുടെ പരമാവധി എണ്ണം കണക്കാക്കുന്നു.
കണക്കാക്കിയ മൂല്യം variable max_nf. എന്നത്ൽ സ്റ്റോർ ചെയ്തു . |
06:40 | നമുക്കറിയാവുന്നതുപോലെ, NR awk.പ്രോസസ്സ് ചെയ്ത നിലവിലെ റെക്കോർഡുകളുടെ എണ്ണമാണ് ' .
'NR' ന്റെ മൂല്യംmax_nr variable.എന്നത് ൽ സംഭരിച്ചിരിക്കുന്നു. |
06:50 | Awk ആദ്യrecord മുതൽ അവസാനrecord വരെ input file പ്രോസസ്സ് ചെയ്യും. |
06:56 | 'Awk' ആദ്യത്തെrecord,പ്രോസസ്സ് ചെയ്യുമ്പോൾ,' max_nr ' , ' 1 'ന് തുല്യമായിരിക്കും. |
07:03 | രണ്ടാമത്തെrecord,പ്രോസസ്സ് ചെയ്യുമ്പോൾ, 'max_nr' '2' ആയിരിക്കും, അത് ഇതേ പോലെ തുടരും. |
07:11 | 'Awk' അവസാനത്തെ റെക്കോർഡ് പ്രോസസ്സ് ചെയ്യുമ്പോൾ, max_nr ആകെ റെക്കോർഡുകളുടെ എണ്ണം സ്റ്റോർ ചെയ്യും . |
07:19 | ഇപ്പോൾ നമ്മൾ ഇൻപുട്ട് ഫയലിൽ നിന്ന് ഡാറ്റ വായിച്ച് ഡാറ്റ ഒരു two dimensional array.യിലേക്ക് സ്റ്റോർ ചെയ്യണം . |
07:26 | for loop, 'നുള്ളിൽ,' നമുക്ക്iterator variable x. ഉണ്ട്. |
07:31 | 'x' ഒന്നിൽ നിന്ന് NFഎന്നതു ലേക്ക് ട്രാൻസ്വേർസ് ആയി ഓരോiterationനും ശേഷം' 'x' നു 1 വർദ്ധിപ്പിക്കുകയും ചെയ്യും. |
07:39 | 'X' എന്നതിന്റെ ഓരോ മൂല്യത്തിനും x, $x(dollar x) ഫീൽഡ് x- ന്റെ മൂല്യത്തെ പ്രതിനിധീകരിക്കുന്നു. |
07:46 | ആ മൂല്യംarray matrix ൽ index NR comma x.ൽ സ്റ്റോർ ചെയ്യും . |
07:53 | ഉദാഹരണത്തിന്, 1 കോമ 1 ന്റെ മാട്രിക്സ് ഇൻപുട്ട് ഫയലിൽ നിന്നും ഇൻഡെക്സ് 1 കോമ 1 'ഉള്ള ഒരു മൂല്യം സ്റ്റോർ ചെയുന്നു . |
08:02 | അതിനാൽ, 'awk' ഈ കോഡ് ഉപയോഗിച്ച് മുഴുവൻinput file ലും പ്രോസസ്സ് ചെയ്ത ശേഷം, matrix array മുഴുവൻ ആയി രൂപപ്പെടും. |
08:10 | ഇത് input file ന്റെ മുഴുവൻ ഡാറ്റയും two dimensional arrayഫോർമാറ്റിലേക്ക് സ്റ്റോർ ചെയ്യും . |
08:16 | ഇപ്പോൾ നമുക്ക്END section. നുള്ളിൽ നോക്കാം. |
08:20 | matrix. ന്റെ ട്രാൻസ്പോസ് പ്രിന്റുചെയ്യാൻ ഞങ്ങൾ ഒരുnested for loop എഴുതി. |
08:25 | ബേസിക് C programming. യുമായുള്ള നിങ്ങളുടെ പരിചയം ഞാൻ അനുമാനിക്കുന്നു.
അതിനാൽ, കോഡിന്റെ ഈ ഭാഗം ഞാൻ വിശദമായി വിവരിക്കുന്നില്ല. |
08:34 | കോഡ് വിശദമായി കാണാനും അത് സ്വയം മനസിലാക്കാനും വീഡിയോ ഇവിടെ തല്ക്കാലം നിർത്തുക. |
08:40 | ഇപ്പോൾ multidimensional array.എങ്ങനെ സ്കാൻ ചെയ്യാമെന്ന് നമ്മൾ പഠിക്കും. |
08:45 | ശരിക്കു പറഞ്ഞാൽ Awkഎന്നതിനു multi-dimensional array ഇല്ല |
08:50 | അതിനാൽ,multidimensional array. സ്കാൻ ചെയ്യുന്നതി നു പ്രത്യേക for statement ഉണ്ടാകില്ല . |
08:56 | ഒരു array.സ്കാൻ ചെയ്യുന്നതിന് നിങ്ങൾക്ക്' multidimensional മാർഗമുണ്ട്. |
09:00 | ഇതിനായി 'for statement ന്റെ കൂടെ split function യോജിപ്പിക്കാം. |
09:05 | split function എന്താണെന്ന് നോക്കാം.
split function ഒരു string മുറിച്ചെടുക്കാനോ വിഭജിക്കാനോ ഉപയോഗിക്കുന്നു. |
09:14 | കൂടാതെ വിവിധ ഭാഗങ്ങൾ ഒരു array. യിൽ വെയ്ക്കുക . |
09:18 | സിന്റാകാസ് ഇപ്രകാരമാണ്. ആദ്യത്തെargument വിഭജിക്കേണ്ട stringഅടങ്ങിയിരിക്കുന്നു. |
09:25 | രണ്ടാമത്തെ'argument 'array യുടെ പേര് വ്യക്തമാക്കുന്നു, ഇവിടെsplit എന്നതിൽ വിഭജിച്ച ഭാഗങ്ങൾ കൊടുക്കും . |
09:33 | മൂന്നാമത്തെargument separator നെ പരാമർശിക്കുന്നു, അത് string നെ വിഭജിക്കാൻ ഉപയോഗിക്കും. |
09:39 | ആദ്യത്തെ ഭാഗം 'arr 1' ൽ സ്റ്റോർ ചെയ്യും . |
09:43 | രണ്ടാമത്തെ ഭാഗം 'Arr 2' എന്നതിലും തുടർന്നും അത് പോലെ . |
09:48 | ഇതിനകം സൃഷ്ടിച്ച array. യിൽ നിന്ന് indices കളുടെ 'യഥാർത്ഥ സീക്വൻസ് വീണ്ടെടുക്കാൻ നമ്മൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.
ഇത് നമുക്ക് എങ്ങനെ ചെയ്യാൻ കഴിയും? |
09:56 | ഞാൻ 'multi_scan.awk' എന്ന പേരിൽ ഒരു കോഡ് എഴുതി |
10:02 | മുഴുവൻ കോഡും BEGIN section.നകത്ത് എഴുതിയിരിക്കുന്നു. |
10:06 | ആദ്യം നമ്മൾ ഒരുa എന്ന് പേരുള്ള array ഉണ്ടാക്കി ഈ മൂല്യങ്ങൾ അതിന് നൽകുകയും ചെയ്തു. |
10:12 | അതിനുശേഷം നമുക്ക് iterator. ഉള്ള for loop ഉണ്ട്. |
10:16 | iterator ഓരോ iteration നും ഓരോ 'indices values ലേക്കും സെറ്റ് ചെയ്യും .
'1,1' തുടർന്ന് '1,2' എന്നിവ. |
10:27 | split function iterator നെ SUBSEP. എന്നതിലൂടെ സെപറേറ്റു ചെയ്ത ചെറിയ ഭാഗങ്ങൾ ആയി വിഭജിക്കുന്നു . |
10:34 | ഈ ഭാഗങ്ങൾ array arr.എന്നത് ൽ സംഭരിക്കും. |
10:38 | അതിനാൽ, 'arr [1]' , 'arr [2]' എന്നിവ യഥാക്രമം ഫസ്റ്റ് index സെക്കന്റ് index എന്നിവ ഉൾക്കൊള്ളുന്നു.
നമുക്ക് ഈ ഫയൽ എക്സിക്യൂട്ട് ചെയ്യാം. |
10:48 | terminal ലേക്ക് മാറി ടൈപ്പ് ചെയുക .awk space hyphen small f space multi underscore scan dot awk
|
11:01 | ഔട്ട്പുട്ട് കാണുക;indices കളുടെ ഒറിജിനൽ സീക്വൻസ് വീണ്ടെടുത്തു. |
11:07 | നമുക്ക് സംഗ്രഹിക്കാം. ഈ ട്യൂട്ടോറിയലിൽ ഞങ്ങൾ പഠിച്ചതു - awk എന്നതിൽ multidimensional array സൃഷ്ടിച്ചു multidimensional array സ്കാൻ ചെയുക . |
11:18 | ഒരു അസൈൻമെൻറ് എന്ന നിലയിൽ, ടു ഡിമെൻഷനാൽ അറേ 90 ഡിഗ്രി തിരിക്കുന്നതിന് ഒരു' awk സ്ക്രിപ്റ്റ് എഴുതുക, matrix.പ്രിന്റുചെയ്യുക. |
11:28 | ഇനിപ്പറയുന്ന ലിങ്കിലെ വീഡിയോ സ്പീച്ച് ട്യൂട്ടോറിയൽ പ്രോജക്റ്റിനെ സംഗ്രഹിക്കുന്നു.
ഡോൺലോഡ് ചെയ്ത് കാണുക. |
11:36 | 'സ്പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്റ്റ്' 'ടീം സ്പോക്കൺ ട്യൂട്ടോറിയലുകൾ ഉപയോഗിച്ച് വർക്ക്ഷോപ്പുകൾ നടത്തുന്നു.
കൂടാതെ ഓൺലൈൻ ടെസ്റ്റു പാസാകുന്നവർക്കു സർട്ടിഫിക്കറ്റുകൾ നൽകുന്നു. |
11:45 | കൂടുതൽ വിവരങ്ങൾക്ക്, ഞങ്ങൾക്ക് എഴുതുക. |
11:49 | നിങ്ങളുടെ സമയബന്ധിതമായ ചോദ്യങ്ങൾ ഈ ഫോറത്തിൽ പോസ്റ്റുചെയ്യുക. |
11:53 | സ്പോക്കൺ ട്യൂട്ടോറിയൽ പ്രോജക്ടിന് ധനസഹായം നൽകുന്നത് എൻഎച്ച്ഇസിടി, എംഎച്ച്ആർഡി, ഇന്ത്യാ ഗവൺമെന്റ്.
ഈ മിഷനെ ക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ഈ ലിങ്കിൽ ലഭ്യമാണ്. |
12:05 | ഐഐടി ബോംബെയിൽ നിന്നു വിജി നായർ
ചേർന്നതിന് നന്ദി |