Linux-AWK/C2/MultiDimensional-Array-in-awk/Gujarati
|
|
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 એ તેમની વચ્ચે એક separator સાથે, એકલ string માં કોનકેટીનેટેડ થાય છે. |
01:50 | separator એ built-in variable SUBSEP ની વેલ્યુ છે. |
01:55 | સરળ one dimensional array માટે સંયુક્ત string એ એકલ index તરીકે વપરાય છે. |
02:01 | ઉદાહરણ તરીકે, ધારો કે આપણે લખીએ છીએ multi within square brackets 4 comma 6 equal to value in double quotes |
02:11 | અહીં multi એ multi-dimensional array નું નામ છે.
ત્યારબાદ, સંખ્યા 4 અને 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 એ બે elements A અને B ધરાવે છે. |
03:08 | હરોળ 2 એ બે elements C અને 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 સ્પેસ print space a within square brackets 2 comma 2
કમાન્ડને એક્ઝિક્યુટ કરવા માટે Enter દબાવો. |
04:13 | નોંધ લો, આપણને આઉટપુટ capital D તરીકે મળે છે. |
04:18 | કેવી રીતે તપાસ કરવું છે કે એક ચોક્કસ index sequence એ આપેલ multidimensional array માં મોજૂદ છે કે નહિ? |
04:25 | આપણે in operator વાપરી શકીએ છીએ. |
04:28 | આપણે તેને અગાઉ આ શ્રેણીમાના single-dimensional array માં પહેલાથી જોઈ ચુક્યા છીએ. |
04:34 | આપણે indices ની સમગ્ર sequence એ parentheses અંતર્ગત લખવી પડશે અને commas થી અલગ પાડેલ. |
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 એ parentheses અંતર્ગત લખવી પડશે. |
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 | terminal પર જાવ અને ટાઈપ કરો 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 માં મહત્તમ fields સંખ્યા ગણતરી કરી રહ્યા છીએ.
અને ગણતરી કરેલ વેલ્યુને variable max_nf માં સંગ્રહી છે. |
06:40 | જેવું કે આપણે જાણીએ છીએ, NR એ awk દ્વારા પ્રોસેસ કરાયેલ વર્તમાન records સંખ્યા છે.
NR ની વેલ્યુ max_nr variable માં સંગ્રહાય છે. |
06:50 | Awk એ input file પહેલા record થી છેલ્લા record સુધી પ્રોસેસ કરશે. |
06:56 | જ્યારે awk પહેલું record પ્રોસેસ કરે છે, max_nr એ 1 ના બરાબર રહેશે. |
07:03 | બીજું record પ્રોસેસ કરતી વખતે, max_nr એ 2 રહેશે અને તે આ પ્રમાણે ચાલુ રહેશે. |
07:11 | જ્યારે awk છેલ્લો record પ્રોસેસ કરે છે, max_nr કુલ records સંખ્યા સંગ્રહિત કરશે. |
07:19 | હવે આપણે input file થી ડેટા વાંચવો જોઈએ અને ડેટાને two dimensional array માં સંગ્રહવો જોઈએ. |
07:26 | for loop અંતર્ગત, આપણી પાસે છે iterator variable x. |
07:31 | x એ એકથી NF ટ્રાવર્સ કરશે, અને x એ દરેક iteration બાદ 1 થી વધશે. |
07:39 | x ની દરેક વેલ્યુ માટે, $x(dollar x) એ field x પર વેલ્યુ રજુ કરે છે. |
07:46 | વેલ્યુ index NR comma x પર array matrix માં સંગ્રહિત થશે. |
07:53 | ઉદાહરણ તરીકે, matrix of 1 comma 1 એ વેલ્યુ સંગ્રહિત કરશે જે input file માંથી index 1 comma 1 પર મોજૂદ છે. |
08:02 | તો, આ કોડ સાથે સમગ્ર input file ને awk પ્રોસેસ કરે તે પછી, matrix array પૂર્ણપણે બનશે. |
08:10 | તે input file નો સંપૂર્ણ ડેટા એક two dimensional array ફોર્મેટમાં સંગ્રહિત કરશે. |
08:16 | હવે, ચાલો END section ની અંદર જોઈએ. |
08:20 | આપણે matrix ના transpose ને પ્રિન્ટ કરવા માટે એક 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
અને Enter દબાવો. |
11:01 | આઉટપુટ જુઓ; indices નો મૂળ ક્રમ પુન:પ્રાપ્ત થયો છે. |
11:07 | ચાલો સારાંશ લઈએ. આ ટ્યુટોરીયલમાં આપણે આપેલ વિશે શીખ્યા- awk માં એક multidimensional array બનાવવો અને multidimensional array ને સ્કેન કરવું |
11:18 | એસાઇનમેન્ટ તરીકે, એક two dimensional array ને 90 ડિગ્રી ફેરવવા માટે awk script લખો અને ફરેલા matrix ને પ્રિન્ટ કરો. |
11:28 | આપેલ લિંક પર ઉપલબ્ધ વિડિઓ સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટનો સારાંશ આપે છે.
કૃપા કરી તેને ડાઉનલોડ કરીને નિહાળો. |
11:36 | Spoken Tutorial Project ટીમ સ્પોકન ટ્યુટોરીયલોનો ઉપયોગ કરીને વર્કશોપો આયોજે છે.
અને ઓનલાઇન પરીક્ષા પાસ થવા પર પ્રમાણપત્રો આપે છે. |
11:45 | વધુ વિગત માટે, કૃપા કરી અમને લખો. |
11:49 | તમારા પ્રશ્નોને આ ફોરમ પર પોસ્ટ કરો. |
11:53 | સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટને NMEICT, MHRD, ભારત સરકાર દ્વારા ફાળો અપાયો છે.
આ મિશન પર વધુ માહિતી આ લિંક પર ઉપલબ્ધ છે. |
12:05 | ભાષાંતર કરનાર, હું ભરત સોલંકી હવે આપથી વિદાય લઉં છું.
જોડાવા બદ્દલ આભાર. |