Linux-AWK/C2/User-Defined-Functions-in-awk/Tamil
From Script | Spoken-Tutorial
|
|
00:01 | Awkல், User-defined functionகள் குறித்த ஸ்போகன் டுடோரியலுக்கு நல்வரவு. |
00:07 | இந்த டுடோரியலில் நாம் கற்கப்போவது- function definitionனின் syntax, Function call மற்றும் Return statement. |
00:17 | இதை சில உதாரணங்கள் மூலம் நாம் செய்வோம். |
00:21 | இந்த டுடோரியலை பதிவு செய்ய நான், Ubuntu Linux 16.04 Operating System மற்றும் gedit text editor 3.20.1ஐ பயன்படுத்துகிறேன். |
00:34 | உங்களுக்கு விருப்பமான எந்த text editorஐயும் நீங்கள் பயன்படுத்தலாம். |
00:38 | இந்த டுடோரியலை பயிற்சி செய்ய, இந்த வலைத்தளத்தில் உள்ள, முந்தையawk டுடோரியல்களை நீங்கள் படித்திருக்க வேண்டும். |
00:45 | C அல்லதுC++ போன்ற ஏதேனும் ஒரு programming language பற்றி உங்களுக்கு தெரிந்திருக்கவேண்டும். |
00:52 | இல்லையெனில், எங்கள் வலைத்தளத்தில் உள்ள அதற்கான டுடோரியல்களை படிக்கவும். |
00:58 | இந்த டுடோரியலில் பயன்படுத்தப்பட்டுள்ள fileகள், இந்த டுடோரியல் பக்கத்தில் உள்ள Code Files இணைப்பில் உள்ளது. அவற்றை தரவிறக்கி, extract செய்துகொள்ளவும். |
01:08 | இப்போது, user defined functionகளை பற்றி கற்போம். function னின் syntax பின்வருமாறு. |
01:16 | மேலும், syntax சுய விளக்கம் கொண்டதாகும். |
01:20 | இங்கு, keyword function கட்டாயமானதாகும். |
01:24 | ஒரு functionஐ call செய்ய, function, னின் பெயரை பின்தொடர்ந்து, அடைப்புக்குறிகளினுள் argumentகளை எழுதவும். |
01:31 | Functionனின் பெயர் மற்றும் open parenthesesனுள் உள்ள argument.க்கும் இடையே, space அனுமதிக்கப்படமாட்டாது. |
01:39 | ஒரு உதாரணத்தை இப்போது பார்ப்போம். |
01:42 | நமது awkdemo.txt fileலில், ஆறாவதுfield, stipendஐ குறித்துக்காட்டுகிறது. |
01:47 | stipend , பூஜ்யம் அல்லது நான்கு digitகளை கொண்டிருப்பதாக அனுமானித்துக்கொள்ளவும் . |
01:54 | stipend , 8900 என்று வைத்துக்கொள்வோம். அதை , எட்டாயிரத்து தொள்ளாயிரம் என்று சொற்களில் எழுதவும். |
02:03 | Stipend, 0 எனில், அதை பூஜ்யம் என்று சொற்களில் எழுதவும். |
02:08 | நான், user_function.awk என்று பெயரிடப்பட்ட ஒரு fileலில், ஏற்கனவே codeஐ எழுதியுள்ளேன். |
02:15 | இங்கு, ஒரு ஒற்றை argument argval. உடன், changeit என்று பெயரிடப்பட்ட ஒரு function ஐ நான் எழுதியுள்ளேன். |
02:23 | இங்கு, argval என்பது நமது ஆறாவதுfield , அதாவதுstipend ஆகும். |
02:29 | Functionனுள் உள்ள முதல்code, argval zeroஆக உள்ளதா, இல்லையா என்று சரிப்பார்க்கும். |
02:36 | ஆம் எனில், அது “Zero”ஐ சொற்களில் print செய்யும். |
02:40 | இல்லை எனில், பின், codeன் else பகுதி செயல்படுத்தப்படும். |
02:46 | Else பகுதியில், முதலில், substring function.ஐ பயன்படுத்தி, ஒவ்வொரு digitஐயும், ஒன்றன் பின் ஒன்றாக, நாம் extract செய்வோம். |
02:54 | மற்றும், வெவ்வேறு indexகளில், ஒரு array a ல், நாம் மதிப்புகளை சேமிப்போம். |
03:00 | உதாரணத்திற்குa[1] , இடது பக்கத்திலிருந்து முதல்digit அல்லது thousand’s place digit.ஐ கொடுக்கும். |
03:08 | நாம் நான்கு digitகளை மட்டும் கொண்டிருப்பதனால், நான் நான்கு indexகளை பயன்படுத்தியுள்ளேன். |
03:13 | அடுத்து, elementகள், பூஜ்யத்திற்கு சமமாக இல்லாமல் இருக்கிறதா என்று சரிபார்ப்போம். மேலும், அவற்றை சரியான வரிசையில் print செய்வோம். |
03:21 | இறுதியில், outputல் ஒரு புதிய line breakஐ கொடுக்க, ஒரு backslash n characterஐ நாம் print செய்கிறோம். |
03:28 | பின், awk scriptனுள், நாம் இரண்டாவது field ஆன, dollar 2, அதாவது nameஐ print செய்துள்ளோம். |
03:35 | பின் parameter dollar 6,, அதாவது stipendஉடன், நாம் function changeit ஐ call செய்கிறோம். Fileஐ செயல்படுத்துவோம். |
03:43 | Terminalக்கு மாறவும். அடுத்து, cd commandஐ பயன்படுத்தி, நீங்கள் தரவிறக்கி, extract செய்த Code Fileகளை வைத்துள்ள folderக்கு செல்லவும். |
03:53 | இப்போது, பின்வரும் command ஐ டைப் செய்து, Enter.ஐ அழுத்தவும். |
04:00 | நாம் எதிர்பார்த்த outputஐ பெறுகிறோம். |
04:03 | ஒரு user-defined function , ஒரு return statement. ஐயும் சேர்க்கலாம். |
04:08 | இந்த statement , awk programன் calling பகுதிக்கு control ஐ return செய்கிறது. |
04:13 | மீதமுள்ள awk program. ன் பயன்பாட்டிற்கு, ஒரு மதிப்பை return செய்யவும் இதை பயன்படுத்தலாம். |
04:20 | அது பார்ப்பதற்கு, இவ்வாறு இருக்கும்: return space expression. இங்கு expression பகுதி, கட்டாயமற்றதாகும். |
04:29 | ஒரு arrayன் average ஐ return செய்ய, ஒரு function ஐ எழுதுவோம். |
04:34 | நான் average.awk fileலில், codeஐ எழுதியுள்ளேன். அதன் உள்ளடக்கத்தை இப்போது பார்ப்போம். |
04:41 | இந்த நோக்கத்திற்கு, avg என்று பெயரிடப்பட்ட ஒரு functionஐ நாம் வரையறுத்துள்ளோம். |
04:46 | அது, ஐந்து parameterகளை கொண்டிருக்கிறது. arr என்ற arrayக்கு நாம், averageஐ கணக்கிடவேண்டும். |
04:55 | i, array loop variable. ஆகும். |
04:58 | sum, எல்லா array elementகளின் ஒரு கூட்டல் ஆகும். |
05:03 | n, array.ல் உள்ள elementகளின் எண்ணிக்கையை குறிப்பிடுகிறது. |
05:07 | ret, function avg.ல் இருந்து return செய்யப்படவேண்டிய variable ஐ குறியீட்டு காட்டுகிறது. ret, கணக்கிடப்பட்ட averageஐ சேமிக்கும். |
05:17 | iக்கு முன் உள்ள கூடுதல் space, variables i, sum, n மற்றும் ret , local variableகள் ஆகும் என்பதை குறிப்பிடுகிறது. |
05:27 | உண்மையாக, local variableகள், argumentகளாக இருக்கக்கூடாது. |
05:32 | Functionகளை வரையறுக்கும் போது, இந்த பழக்கத்தை நீங்கள் பின்பற்ற வேண்டும். |
05:36 | For loopனுள், நாம் array elementகளின் மொத்த எண்ணிக்கை மற்றும் கூட்டலை கணக்கிட்டுள்ளோம். |
05:43 | கூட்டலை, array elementகளின் மொத்த எண்ணிக்கையால் வகுத்து, நாம் average ஐ கணக்கிட்டுள்ளோம். மேலும், அந்த மதிப்பை variable ret.ல் சேமித்துள்ளோம். |
05:54 | இந்த function avg() , variable ret.ன் மதிப்பை return செய்கிறது. |
06:01 | BEGIN section, னுள், ஐந்து வெவ்வேறு எண்களுடன், நாம் array nums ஐ வரையறுத்துள்ளோம். |
06:07 | print statementல், ஒரு argument, அதாவது, array name.உடன் நாம், function avg() ஐ call செய்கிறோம். |
06:14 | அதனால், local variableகளை, argumentகளாக நீங்கள் pass செய்யவேண்டாம். |
06:20 | Terminalக்கு திரும்பவும். நான் terminalஐ clear செய்கிறேன். |
06:26 | பின்வரும் commandஐ டைப் செய்யவும்- awk space hyphen f space average dot awk. Enterஐ அழுத்தவும். |
06:37 | Outputஐ 3.6ஆக நாம் பெறுகிறோம். நீங்கள் ஒரு கணிப்பொறியை பயன்படுத்தி, அதை உறுதி செய்துகொள்ளலாம். |
06:44 | மேலும் ஒரு உதாரணத்தை பார்ப்போம். |
06:47 | ஒரு string ஐ reverse செய்ய, ஒரு codeஐ நான் எழுதி, அதற்கு reverse.awk என பெயரிட்டுள்ளேன். recursive function , ஒரு string.ஐ reverse செய்ய பயன்படுகிறது. |
06:57 | காணொளியை, இங்கு இடைநிறுத்தி, control எப்படி செல்கிறது என்பதை புரிந்துகொள்ள codeஐ பார்க்கவும். பின், outputஐ பார்க்க, அதை செயல்படுத்தவும். |
07:07 | பயிற்சியாக, awkdemo.txt file.லில் உள்ள Roll number field ஐ reverse செய்ய, function revஐ பயன்படுத்தவும். |
07:16 | உதாரணத்திற்குroll number, A001ஆக இருந்தால்output, 100A.ஆக இருக்கவேண்டும். |
07:24 | இதற்கான code, Code Files இணைப்பில் reverse_roll.awkஆக கொடுக்கப்பட்டுள்ளது. |
07:31 | இத்துடன், இந்த டுடோரியலின் முடிவுக்கு நாம் வந்துவிட்டோம். சுருங்கச் சொல்ல. |
07:36 | இந்த டுடோரியல் நாம் கற்றது- function definitionனின் syntax, |
07:41 | Function call மற்றும் Return statement. |
07:45 | பயிற்சியாக- 1. ஒரு 2D matrix.ன் transpose ஐ உருவாக்க, ஒரு function ஐ எழுதவும். |
07:52 | ஒரு arrayல் இருந்து, குறைந்தபட்ச மதிப்பு element ஐ return செய்ய, ஒரு function ஐ எழுதவும். |
07:58 | பின்வரும் இணைப்பில் உள்ள காணொளி, Spoken Tutorial திட்டத்தை சுருங்கச் சொல்கிறது. அதை தரவிறக்கி காணவும். |
08:06 | ஸ்போகன் டுடோரியல் திட்டக்குழு , ஸ்போகன் டுடோரியல்களை பயன்படுத்தி, செய்முறை வகுப்புகள் நடத்தி, இணையத்தில் பரீட்சை எழுதி தேர்வோருக்கு சான்றிதழ்கள் தருகிறது. |
08:16 | மேலும் விவரங்களுக்கு, எங்களுக்கு எழுதவும். |
08:20 | உங்கள் நேரமிடப்பட்ட கேள்விகளை, இந்த மன்றத்தில் முன்வைக்கவும். |
08:24 | ஸ்போகன் டுடோரியல் திட்டத்திற்கு பண ஆதரவு, இந்திய அரசாங்கத்தின், NMEICT, MHRD, மூலம் கிடைக்கிறது. மேலும் விவரங்களுக்கு, கீழ்கண்ட இணைப்பை பார்க்கவும். |
08:36 | இந்த டுடோரியலை தமிழாக்கம் செய்தது ஜெயஸ்ரீ, குரல் கொடுத்தது ரிஷிதா. கலந்துகொண்டமைக்கு நன்றி. |