BOSS-Linux/C2/Redirection-Pipes/Tamil

From Script | Spoken-Tutorial
Revision as of 11:48, 5 January 2015 by Priyacst (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:00:00 ரிடிரக்ஷன் மற்றும் பைப்ஸ் குறித்த ஸ்போகன் டுடோரியலுக்கு நல்வரவு
00:00:07 நான் லினக்ஸ் OS பயன்படுத்துகிறேன்.
00:00:09 லீனக்ஸ் OS மற்றும் அடிப்படை காமான்ட்கள் குறித்து உங்களுக்கு அறிமுகம் இருக்கும் என எண்ணுகிறேன்.
00:00:16 உங்களுக்கு ஆர்வம் இருந்தால் அவை இதே தளத்தில் மற்ற டிடோரியல்களில் உள்ளன.
00:00:22 லீனக்ஸ் case sensitive ஆனவை.
00:00:25 மற்றபடி குறிப்பிட்டால் ஒழிய கமாண்ட்களில் கீழ் நிலை எழுத்துக்களே பயன்படும்.
00:00:32 லீனக்ஸில் முனையத்தில் பல வேலைகள் செய்கிறோம்.
00:00:35 ஒரு கட்டளையை செயலாக்க விசைப்பலகையால் உள்ளிடுகிறோம்.
00:00:39 தேதி நேரம் இவற்றை அறிய விரும்பினால்...
00:00:41 விசைப்பலகை மூலம் டேட் என உள்ளிடுகிறோம்.
00:00:46 சாதாரணமாக விசைப்பலகை மூலம் உள்ளிடுகிறோம்.
00:00:48 கமாண்டின் அவுட்புட் டெர்மினலில் கிடைக்கிறது.
00:00:56 சில சமயம் கமாண்ட் செயலாகும் போது பிழை ஏற்படுகிறது.
00:00:59 உதாரணமாக உள்ளிக: கேட் ஸ்பேஸ் ஏஏஏ என்டர்.
00:01:05 அப்படி எந்த பைலும் இல்லை என பிழை செய்தி சொல்லுகிறது.
00:01:10 இந்த பிழை டெர்மினலில் காணப்படுகிறது. பிழை அறிவிப்பும் டெர்மினலிலேயே நிகழ்கிறது.
00:01:20 உள்ளீடு, வெளியீடு, பிழை அறிவிப்பு... கமான்ட்களுடன் தொடர்புள்ள சிறப்பு செயல்கள்.
00:01:24 ரிடிரக்ஷன் பற்றி அறியும் முன் ஸ்ட்ரீம் மற்றும் பைல் டிஸ்க்ரிப்டர் கோட்பாடுகளை புரிந்து கொள்ள வேண்டும்.
00:01:31 பாஷ் போன்ற லீனக்ஸ் ஷெல் உள்ளீட்டை வாங்கி ஒரு ஸ்ட்ரீம் எழுத்துருக்களாக வெளியீட்டை அனுப்புகிறது.
00:01:37 ஒவ்வொரு எழுத்துருவும் அதற்கு முன் பின் உள்ள எழுத்துருவில் இருந்து சுதந்திரமானது.
00:01:41 ஸ்ட்ரீம்கள் பைல் ஐஓ நுட்பத்தால் அணுகப்படுகின்றன.
00:01:44 உண்மையில் எழுத்துருக்கள் பைல், கீபோர்ட், விண்டோ இவற்றில் இருந்து, வருகிறதோ போகிறதோ - இதெல்லாம் ஒரு பொருட்டே இல்லை.
00:01:51 லீனக்ஸில் திறந்திருக்கும் எந்த ஒரு ப்ராசசின் பைலும் ஒரு முழு எண்ணுடன் பொருத்தப்பட்டது.
00:01:57 இந்த எண் மதிப்பு பைல் டிஸ்க்ரிப்டர் எனப்படும்.
00:02:05 ஷெல்கள் மூன்று ஸ்டாண்டர்ட் ஐ/ஓ ஸ்ட்ரீம்களை பயன்படுத்தும்.
00:02:08 மூன்றும் நன்கு அறியப்பட்ட பைல் டிஸ்க்ரிப்டருடன் தொடர்புள்ளவை.
00:02:12 எஸ்டிடிஐஎன்[stdin] என்பது ஸ்டாண்டர்ட் இன்புட் ஸ்ட்ரீம்.
00:02:15 கட்டளைகளுக்கு உள்ளீடு தரும்...
00:02:17 இதன் பைல் டிஸ்க்ரிப்டர் 0
00:02:19 எஸ்டிடிஅவுட்[stdout] ஸ்டாண்டர்ட் அவுட்புட் ஸ்ட்ரீம்.
00:02:22 கட்டளைகளின் வெளியீட்டை தரும் இதன் பைல் டிஸ்க்ரிப்டர் 1.
00:02:26 எஸ்டிடிஇஆர்ஆர்[stderr] என்பது ஸ்டாண்டர்ட் எரர் ஸ்ட்ரீம். கட்டளைகளின் பிழை வெளியீட்டை தருமிதன் பைல் டிஸ்க்ரிப்டர் 2.
00:02:36 இன்புட் ஸ்ட்ரீம் ப்ரோக்ராம்களுக்கு இன்புட்டை தரும்.
00:02:40 முன்னிருப்பாக அவை டெர்மினலில் கீபோர்ட் இடுகைகளை ஏற்கும்.
00:02:44 அவுட்புட் ஸ்ட்ரீம்கள் எழுத்துக்களை அச்சிடுகின்றன. முன்னிருப்பாக டெர்மினலில் அச்சடிக்கப்படும்.
00:02:47 ஆரம்பத்தில் டெர்மினல் ஆஸ்கி ப்ரின்டர் அல்லது ஒரு திரை டெர்மினலாக இருந்தது.
00:02:52 இப்போது வரைகலை டெஸ்க்டாப்பில் உரை விண்டோவாக இருக்கிறது.
00:02:56 மூன்று ஸ்ட்ரீம்களும் முன்னிருப்பாக சில பைல்களுக்கு இணைந்துள்ளன.
00:03:01 இந்த நடத்தையை லினக்ஸில் மாற்றலாம்.
00:03:04 மூன்று ஸ்ட்ரீம்களையும் வேறு சில பைல்களுக்கு இணைக்கலாம்.
00:03:07 இது ரிடிரக்ஷன் ஆகும்.
00:03:09 இந்த மூன்று ஸ்ட்ரீம்களில் எப்படி ரிடிரக்ஷன் செய்யப்படுகிறது என காணலாம்.
00:03:14 முதலில் ஸ்டாண்டர்ட் இன்புட் ரிடிரக்ஷன்
00:03:17 பைலில் இருந்து ஸ்டாண்டர்ட் இன் ஐ இட முனை அம்புக்குறி ஆபரேட்டர் வழியாக அனுப்புகிறோம். எப்படி?
00:03:22 டபில்யுசி கமாண்ட் ஒரு பைலில் வரிகள், சொற்கள், எழுத்துருக்களை எண்ணும் என அறிவோம்.
00:03:28 டெர்மினலில் டைப் செய்க: டபில்யுசி
00:03:31 என்டர் செய்க.
00:03:32 ஒரு கண் சிமிட்டும் கர்சரை காணலாம். நாம் விசைப்பலகையால் ஏதேனும் உள்ளிட வேண்டும்.
00:03:37 உள்ளிடலாம். "திஸ் டுடோரியல் இஸ் வெரி இம்பார்டன்ட்"
00:03:46 என்டர் செய்க.
00:03:48 கண்ட்ரோல், டி[d] விசைகளை ஒன்றாக தட்டலாம்.
00:03:52 நாம் உள்ளிட்ட வரிகள் மீது கமாண்ட் வேலை செய்து...
00:03:55 வெளியீட்டை டெர்மினலில் கொடுக்கும்.
00:03:57 இங்கு ஒரு பைலும் டபில்யுசி கமாண்ட் க்குப் பிறகு தரவில்லை.
00:04:01 அதனாலது ஸ்டாண்டர்ட் இன்புட் ஸ்ட்ரீம் இலிருந்து இன்புட்டை எடுக்கும்.
00:04:04 அது முன்னிருப்பாக விசைப்பலகைக்கு பிணைந்துள்ளதால் டபில்யுசி இன்புட்டை அங்கிருந்து எடுத்துக்கொள்கிறது.
00:04:12 இப்போது இப்படி எழுத: "டபில்யுசி ஸ்பேஸ் 'இட முனை அம்புக்குறி' ஸ்பேஸ் டெஸ்ட்1 டாட் டிஎக்ஸ்டி "
00:04:19 டபில்யுசி... பைல் டெஸ்ட்1 டாட் டிஎக்ஸ்டி இன் வரி, சொற்கள், எழுத்துருக்களை எண்ணி சொல்கிறது.
00:04:27 இப்போது டைப் செய்க: "டபில்யுசி ஸ்பேஸ் டெஸ்ட்1 டாட் டிஎக்ஸ்டி "
00:04:34 அதே விடை கிடைக்கிறது.
00:04:37 என்ன வித்தியாசம்?
00:04:39 "டபில்யுசி ஸ்பேஸ் டெஸ்ட் 1டாட் டிஎக்ஸ்டி" என்று எழுதியபோது கமாண்ட் பைல் டெஸ்ட் 1டாட் டிஎக்ஸ்டி ஐ திறந்து படித்தது.
00:04:46 ஆனால் நாம் "டபில்யுசி ஸ்பேஸ் 'இட முனை அம்புக்குறி' டெஸ்ட்1 டாட் டிஎக்ஸ்டி ", என உள்ளிட்ட போது டபில்யுசி க்கு திறக்க பைல் கிடைக்கவில்லை.
00:04:53 ஆகவே அது இன்புட்டை ஸ்டாண்டர்ட் இன் லிருந்து எடுத்தது.
00:04:57 அந்த ஸ்டாண்டர்ட் இன் ஐ நாம் பைல் டெஸ்ட் 1டாட் டிஎக்ஸ்டி க்கு காட்டினோம்.
00:05:01 ஆகவே கமாண்ட் டெஸ்ட்1 லிருந்து படிக்கிறது.
00:05:04 ஆனால் அதற்கு ஸ்டாண்டர்ட் இன் க்கு தரவு எங்கிருந்து வருகிறதென தெரியாது.
00:05:12 இப்போது ஸ்டாண்டர்ட் அவுட்புட்டை, ஸ்டாண்டர்ட் எரர் ஐ ரிடிரக்ட் செய்யலாம் .
00:05:17 அவுட்புட் அல்லது எரர் ஐ ஒரு பைல் க்கு அனுப்ப இரண்டு வழிகளுண்டு:
00:05:20 ”n என்பது பைல் டிஸ்க்ரிப்டர். nஒற்றை வல அம்புக்குறி... அவுட்புட் ஐ பைல் டிஸ்க்ரிப்டர் n இலிருந்து ஒரு பைல் க்கு ரிடிரக்ட் செய்கிறது.
00:05:29 அந்த பைல் க்கு எழுத அதிகாரம் தேவை.
00:05:32 ஒரு வேளை பைல் இல்லையெனில் உருவாக்கப்படும்.
00:05:35 பைல் இருந்தால் அதன் உள்ளடக்கங்கள் எச்சரிக்கை ஏதும் இல்லாமல் காணாமல் போகும்.
00:05:40 'n' இரட்டை வல அம்புக்குறி' யும் அவுட்புட் ஐ பைல் டிஸ்க்ரிப்டர் n இலிருந்து ஒரு பைல் க்கு ரிடிரக்ட் செய்கிறது.
00:05:47 மீண்டும், பைல் க்கு எழுத அதிகாரம் தேவை.
00:05:50 பைல் இல்லையெனில் அது உருவாக்கப்படும்.
00:05:52 பைல் இருந்தால் அதன் உள்ளடக்கங்களின் பின்னால் அவுட்புட் சேர்க்கப்படும்.
00:05:59 n ஒற்றை வல அம்புக்குறி அல்லது n இரட்டை வல அம்புக்குறி என்பதில் "n" என்பது பைல் டிஸ்க்ரிப்டர் ஐ குறிக்கிறது.
00:06:05 அதை விட்டுவிட்டால் ஸ்டாண்டர்ட் அவுட்புட் ஆன பைல் டிஸ்க்ரிப்டர்1 என கொள்ளப்படும்.
00:06:10 ஆகவே வெறும் வல அம்புக்குறியானது, 1, வல அம்புக்குறிக்கு சமம்.
00:06:15 ஆனால் எரர் ஸ்ட்ரீம் ஐ ரிடிரக்ட் செய்ய, 2 வல அம்புக்குறி அல்லது 2 இரட்டை வல அம்புக்குறியை பயன்படுத்துக.
00:06:22 இதை செயலில் பார்க்கலாம்.
00:06:24 டபில்யுசி கமாண்ட், பைல் அல்லது ஸ்டாண்டர்ட் இன் இலிருந்து செயலாக்கி விடைகளை டெர்மினல் விண்டோவில் காட்டுகிறது.
00:06:31 டெர்மினலில் இதை காட்ட வேண்டாமெனில் என்ன செய்வது?
00:06:34 பின்னால் தகவலை பயன்படுத்த ஒரு பைலில் அதை சேமிக்க விரும்புகிறோம்.
00:06:38 டபில்யுசி முன்னிருப்பாக அவுட்புட்டை ஸ்டாண்டர்ட்அவுட் க்கு எழுதும்.
00:06:42 அது முன்னிருப்பாக டெர்மினலுக்கு இணைந்துள்ளதால்....
00:06:45 அவுட்புட் டெர்மினலில் காட்டப்பட்டது.
00:06:48 ஸ்டாண்டர்ட்அவுட் ஐ ஒரு பைலுக்கு ரிடிரக்ட் செய்ய முடிந்தால் டபில்யுசி கமாண்ட் அந்த பைலுக்கு எழுதும்.
00:06:57 எழுதுவோம்: "டபில்யுசி ஸ்பேஸ் டெஸ்ட்1 டாட் டிஎக்ஸ்டி 'வல அம்புக்குறி' டபில்யுசி_ ரிசல்ட்ஸ் டாட் டிஎக்ஸ்டி".
00:07:09 என்டர் செய்க.
00:07:11 உண்மையில் நடந்ததா என்றறிய கேட் கமாண்டை பயன்படுத்தி டபில்யுசி _ரிசல்ட்ஸ் டாட் டிஎக்ஸ்டி இன் உள்ளடக்கத்தை காட்டலாம்.
00:07:23 நடந்துள்ளது.
00:07:24 அதே டிரக்டரியில் இன்னொரு பைல் டெஸ்ட்2 என வைத்துள்ளதாக கொள்வோம்.
00:07:30 அதே கமாண்ட் ஐ டெஸ்ட்2 பைலுக்கு செய்வோம். டைப் அடிக்கலாம்: "டபில்யுசி ஸ்பேஸ் டெஸ்ட்2 டாட் டிஎக்ஸ்டி 'வல அம்புக்குறி'டபில்யுசி _ரிசல்ட்ஸ் டாட் டிஎக்ஸ்டி"
00:07:44 பைல் டபில்யுசி _ரிசல்ட்ஸ் இன் உள்ளடக்கங்கள் மேலெழுதப்படும்.
00:07:48 இதை பார்க்கலாம்.
00:07:56 முன்பு எழுதினதற்கு பதில் "டபில்யுசி ஸ்பேஸ் டெஸ்ட் 1 டாட் டிஎக்ஸ்டி இரண்டு முறை'வல அம்புக்குறி' டபில்யுசி அண்டர்ஸ்கோர் ரிசல்ட்ஸ் டாட் டிஎக்ஸ்டி" என எழுத...
00:08:07 பைல் டபில்யுசி அண்டர்ஸ்கோர் ரிசல்ட்ஸ் டாட் டிஎக்ஸ்டி இன் உள்ளடக்கத்தை மாற்றாமல் புதிய உள்ளீடு பின்னால் ஒட்டப்படும்.
00:08:15 இதையும் பார்க்கலாம்.
00:08:26 ஸ்டாண்டர்ட் எரர் ஐ ரிடிரக்ட் செய்வதும் அதேபோல்தான்.
00:08:29 ஒரே மாற்றம்... ஸ்டாண்டர்ட் எரர் இன் பைல் டிஸ்க்ரிப்டர் எண்ணை அம்புக்குறி அல்லது இரட்டை வல அம்புக்குறி க்கு முன்னால் குறிப்பிட வேண்டும்.
00:08:38 நமக்கு பைல் ஏஏஏ என ஒன்றும் இல்லை என தெரியும். எழுதுகிறோம். "டபில்யுசி ஸ்பேஸ் ஏஏஏ"
00:08:46 ஷெல் எரர் “நோ சச் பைல் ஆர் டிரக்டரி” என காட்டும்.
00:08:50 இந்த எரர் திரையில் தெரிய வேண்டாமெனில் வேறு ஒரு பைலுக்கு ரிடிரக்ட் செய்துவிடலாம்.
00:08:55 இதற்கு கமாண்ட் "டபில்யுசி ஸ்பேஸ் ஏஏஏ ஸ்பேஸ் 2 'வல முனை அம்புக்குறி' எரர்லாக் டாட் டிஎக்ஸ்டி "
00:09:06 இப்போது எரர் டெர்மினலில் தெரியாது, அது பைல் எரர்லாக் டாட் டிஎக்ஸ்டி க்கு எழுதப்படும்.
00:09:12 இது நடந்துள்ளதை பார்க்கலாம். கமாண்ட் "கேட் ஸ்பேஸ் எரர்லாக் டாட் டிஎக்ஸ்டி "
00:09:22 இப்போது நான் இன்னொரு பிழை செய்கிறேன். இயக்கும் கமாண்ட் "கேட் ஸ்பேஸ் பிபிபி[bbb] ஸ்பேஸ் 2 'வல அம்புக்குறி' எரர்லாக் டாட் டிஎக்ஸ்டி ".
00:09:34 முந்தைய எரர் புதிய எரர் ஆல் மேலெழுதப்படும்.
00:09:39 பார்க்கலாம். "கேட் ஸ்பேஸ் எரர்லாக் டாட் டிஎக்ஸ்டி"
00:09:46 நமக்கு எல்லா எரர்களும் பார்க்கப்பட வேண்டுமானால் கமாண்ட் "டபில்யுசி ஸ்பேஸ் ஏஏஏ ஸ்பேஸ் 2 'வல அம்புக்குறி' இரு முறை; எரர்லாக் டாட் டிஎக்ஸ்டி"
00:09:58 கேட் கமாண்ட் ஐ பயன்படுத்தி சோதித்துவிடலாம்.
00:10:06 எப்படி இந்த மூன்று ஸ்ட்ரீம்கள் ஸ்டாண்டர்ட் அவுட், ஸ்டாண்டர்ட் இன், ஸ்டாண்டர்ட் எரர் ஆகியன திசை திருப்பப்பட்டு தனித்தனியாக கையாளப்பட்டன என கண்டோம். இவை அனைத்தும் ஒன்றாக கையாளப்பட்டு இயக்கப்படும் போது இவற்றின் உண்மை சக்தி எப்போது விளங்கும்.
00:10:20 இந்த செயலுக்கு பைப்லைனிங் எனப்பெயர்.
00:10:22 பைப்கள் ஒரு கமாண்ட் சங்கிலியை உருவாக்கப்பயன்படும்.
00:10:25 பைப் ஒரு கமாண்ட் இன் அவுட்புட் ஐ சங்கிலியில் உள்ள அடுத்த கமாண்டின் இன்புட்டுக்கு தருகிறது.
00:10:30 அதை பார்க்கலாம். கமாண்ட்1 செங்குத்துக்கோடு கமாண்ட்2 ஹைபன் ஆப்ஷன்(-option) செங்குத்துக்கோடு கமாண்ட்3 ஹைபன் ஆப்ஷன்1 ஹைபன் ஆப்ஷன்2 செங்குத்துக்கோடு கமாண்ட்4
00:10:46 நடப்பு டிரக்டரியில் உள்ள மொத்த பைல்கள் மற்றும் டிரக்டரிகளின் எண்ணிக்கை தெரிய வேண்டும் என்போம்.
00:10:51 என்ன செய்யலாம். "எல்எஸ் ஸ்பேஸ் ஹைபன் எல்" நடப்பு டிரக்டரியில் உள்ள மொத்த பைல்ஸ் மற்றும் டிரக்டரிகளின் எண்ணிக்கையை காட்டும்.
00:10:58 இந்த அவுட்புட்டை ஒரு பைலுக்கு ரிடிரக்ட் செய்யலாம். "எல்எஸ் ஸ்பேஸ் ஹைபன் எல் 'வல அம்புக்குறி' பைல்ஸ் டாட் டிஎக்ஸ்டி"
00:11:08 "கேட் ஸ்பேஸ் பைல்ஸ் டாட் டிஎக்ஸ்டி" ஐ இயக்குவோம்.
00:11:14 இப்போது ஒவ்வொரு வரியும் ஒரு பைல் அல்லது டிரக்டரி இன் பெயர்.
00:11:17 ஆகவே இந்த பைலில் உள்ள வரிகளை எண்ண முடிந்தால் பைல்ஸ் டாட் டிஎக்ஸ்டி ஐ நமக்கு பயனாக்கலாம்.
00:11:24 இதை பின் வரும் கமாண்ட் ஆல் சாதிக்கலாம். "டபில்யுசி ஸ்பேஸ் ஹைபன் எல் பைல்ஸ் டாட் டிஎக்ஸ்டி"
00:11:32 இதில் சில பிரச்சனைகள் உள்ளன
00:11:35 இடையில் ஒரு பைல் வேண்டி இருக்கிறது. இங்கே அது பைல்ஸ் டாட் டிஎக்ஸ்டி .
00:11:40 ஒரு வேளை முதல் கமாண்ட் நிறைய வெளியீட்டை கொடுத்தால் வட்டின் நினைவகம் அதிகரிக்ககூடும்
00:11:46 பல கமாண்ட்களை சேர்க்க நினைத்தால் இது மெதுவாகவே வேலை செய்யும்.
00:11:50 பைப்களை பயன்படுத்தி இதை சுலபமாக செய்யலாம். எழுதுவோம்: "எல்எஸ் ஸ்பேஸ் ஹைபன் எல் 'செங்குத்துக்கோடு' டபில்யுசி ஸ்பேஸ் ஹைபன் எல்"
00:12:01 வெகு சுலபமாகவே அதே வேலையை செய்துவிட்டோம்.
00:12:06 எல்எஸ் கமாண்ட் இன் அவுட்புட் டபில்யுசி கமாண்ட் க்கு இன்புட் ஆகிறது.
00:12:10 கமாண்ட்களை பைப்களை பயன்படுத்தி இயக்கலாம்.
00:12:15 பைப்கள் இன் வழக்கமான பயன் பலபக்க காட்சியை படிப்பது.
00:12:19 டைப் செய்க: "சிடி ஸ்பேஸ் ச்லாஷ் யூசர் ச்லாஷ் பின்[bin]".
00:12:24 இப்போது பின்[bin] டிரக்டரியில் இருக்கிறோம்.
00:12:28 "எல்எஸ் ஹைபன் எல்" ஐ இயக்குவோம்.
00:12:31 அவுட்புட் ஐ சரியாக பார்க்க முடியாததால் பைப் ஆல் மோர் க்கு இணைத்தால் பார்க்க முடியும்.
00:12:37 பட்டியலில் ஸ்க்ரால் செய்து படிக்கலாம்.
00:12:41 "க்யு[q]" ஐ அழுத்தி வெளியேறலாம்.
00:12:45 இவை பைல்களுடன் வேலை செய்ய உதவ சில கமாண்ட் கள்.
00:12:48 இன்னும் பல கமாண்ட் களும் உள்ளன.
00:12:50 கண்ட கமாண்ட் களுக்கு பல் வேறு ஆப்ஷன்கள் உள்ளன.
00:12:54 'மேன்[man]' கமாண்ட் ஐ பயன்படுத்தி இவற்றை காணுங்கள்
00:12:58 ஒரு கமாண்ட் பற்றி நன்கு அறிய அவற்றை மீண்டும் மீண்டும் பயன்படுத்துக
00:13:04 இத்துடன் இந்த டுடோரியல் நிறைவு பெறுகிறது.
00:13:07 ஸ்போகன் டுடோரியல் பாடங்கள் டாக்டு எ டீச்சர் திட்டத்தின் முனைப்பாகும். இதற்கு ஆதரவு இந்திய அரசு துவக்கிய ஐசிடி மூலம் தேசிய கல்வித்திட்டத்தின் வழியே கிடைக்கிறது.
00:13:15 மேற்கொண்டு விவரங்கள் எங்கள் வலைத்தளத்தில் கிடைக்கும்.
00:13:19 மொழியாக்கம் கடலூர் திவா. நன்றி.

Contributors and Content Editors

PoojaMoolya, Priyacst