Linux-AWK/C2/Built-in-Functions-in-awk/Telugu

From Script | Spoken-Tutorial
Revision as of 12:01, 17 July 2019 by Madhurig (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time
Narration
00:01 awk లోని built-in functions పై స్పొకన్ ట్యుటోరియల్ కు స్వాగతం.
00:07 ఈ ట్యుటోరియల్ లో మనం వివిధరకాల built-in functions అనగా Arithmetic functions,
00:15 స్ట్రింగ్ ఫంక్శన్స్,
00:17 ఇన్పుట్ ఔట్ పుట్ ఫంక్శన్స్ మరియు Time-stamp functions ల గురించి నేర్చుకుంటాం.
00:23 మనం దీనిని కొన్ని ఉదాహరణలతో చూద్దాం.
00:26 ఈ ట్యుటోరియల్ ని రెకార్డ్ చేయడానికి నేను ఉబంటు లినక్స్ 16.04 ఆపరేటింగ్ సిస్టం మరియు జిఎడిట్ టెక్స్ట్ ఎడిటర్ 3.20.1 ని ఉపయోగిస్తున్నాను.
00:38 మీకు నచ్చిన ఏ ఇతర టెక్స్ట్ ఎడిటర్ ని అయినా మీరు ఉపయోగించవచ్చు.
00:42 ఈ ట్యుటొరియల్ ను అభ్యసించడానికి మీకు మా వెబ్సైట్ లోని మునుపటి awk ట్యుటొరియల్స్ పై అవగాహన ఉండాలి.
00:49 మీకు ఏదైనా ఒక ప్రోగ్రామింగ్ లాంగ్వేజ్ C లేదా C++ లాంటి వాటిపై కనీస అవగాహన ఉండాలి.
00:56 లేదంటే, తత్సంభంధిత ట్యుటొరియల్స్ కొరకు మా వెబ్ సైట్ ని సంప్రదించండి.
01:02 ఈ ట్యుటొరియల్ లో ఉపయోగించిన ఫైల్ లు ఈ ట్యుటొరియల్ పేజ్ లో ఉన్న Code Files లింక్ లో అందుబాటులో ఉన్నాయి. దయచేసి డౌన్లోడ్ చేసి సంగ్రహించండి.
01:12 Built-in functions ఎల్లప్పుడూ awk కొరకు కాల్ చేయడానికి అందుబాటులో ఉంటాయి.
01:17 ముందుగా మనం arithmetic functions గురించి తెలుసుకుందాం. square root function (sqrt (x)), ఒక సంఖ్య x యొక్క ధన వర్గమూలాన్ని తిరిగి ఇస్తుంది.
01:27 int ఫంక్షన్ x ను పూర్ణాంక విలువకు కుదిస్తుంది.
01:32 exponential function x యొక్క ఎక్స్పోనెంశియల్ ను ఇస్తుంది.
01:37 log function, x యొక్క సహజ logarithm విలువను ఇస్తుంది.
01:43 sin మరియు cos వరుసగా sine(x) మరియు cosine(x) విలువలను ఇస్తుంది.
01:49 argument x ను తప్పనిసరిగా radians లోనే పేర్కొనాలని గుర్తుంచుకోండి.
01:55 ఇప్పుడు ఒక ఉదాహరణతో ఈ functions గురించి తెలుసుకుందాం.
02:00 నేను ఇంతకముందే ఒక కోడ్ ని arithmetic underscore function dot awk ఫైల్ లో రాసి ఉంచాను. అదే కోడ్ Code Files లింక్ లో అందుబాటులో ఉంది.
02:10 ఇక్కడ మనం వరసగా ఒక ధన మరియు రుణ సంఖ్య యొక్క వర్గమూలాన్ని ముద్రిస్తున్నాం.
02:17 తర్వాత మనం వరసగా ఒక ధన మరియు రుణ సంఖ్యల యొక్క పూర్ణాంక విలువను ముద్రిస్తాం.
02:24 తర్వాత మనం ఒక చిన్న మరియు ఒక అతి పెద్ద నంబర్ల యొక్క ఎక్స్పొనెంశియల్ లను ముద్రిస్తాం.
02:31 ఆ తర్వాత, ధన మరియు రుణ సంఖ్యల యొక్క సహజ logarithm విలువను ముద్రిద్దాం.
02:38 మనము 0.52 రేడియన్ ఏదైతే 30 డిగ్రీ అవుతుందో, దాని sine మరియు cosine విలువలను ని కూడా ముద్రిద్దాం. ఫైల్ను టెర్మినల్ పై ఎగ్జిక్యూట్ చేద్దాం.
02:50 Ctrl, Alt మరియు T కీలను నొక్కి టర్మినల్ ను తెరవండి.
02:55 తర్వాత మీరు cd కమాండ్ ను ఉపయోగించి ఫైల్ ను డౌన్ లోడ్ చేసి ఎక్స్ట్రాక్ట్ చేసిన ఫోల్డర్ కు వెళ్ళండి.
03:03 ఇప్పుడు awk space -f space arithmetic_function.awk అని టైప్ చేసి ఔట్ పుట్ను చూడడానికి ఎంటర్ నొక్కండి.
03:14 ఈ అవుట్పుట్ నుండి కొన్ని విషయాలు స్పష్టంగా ఉన్నాయి.
03:18 sqrt() function ఒక ధన సంఖ్య యొక్క వర్గమూలాన్ని ఇస్తుంది.
03:23 ఒకవేళ అది రుణ సంఖ్య అయితే అది nan లేదా not a number తిరిగి ఇస్తుంది.
03:29 int(), ఏదైనా ధన లేక రుణ సంఖ్యయొక్క ట్రంకేటెడ్ పూర్ణసంఖ్య ని ఇస్తుంది.
03:36 exp() ఫంక్షన్ అనేది ఒక సంఖ్యయొక్క ఎక్స్పొనెంశియల్ ను ఇస్తుంది. సంఖ్య గనక చాలా పెద్దది అయితే, ఆ ఫంక్షన్ inf ను తిరిగి ఇస్తుంది.
03:47 ఒక ధనసంఖ్యయొక్క సహజ logarithm అనేది log() function ద్వారా ఇవ్వబడుతుంది.
03:53 ఒకవేళ ఆ సంఖ్య రుణ సంఖ్య ఐతే ఆ function తిరిగి nan అని ఇస్తుంది.
03:58 Sine మరియు cosine functions సంబంధిత విలువలని ఇస్తాయి. మీరు వాటి విలువలను క్యాలిక్యులేటర్ తో సరిచూసుకోవచ్చు.
04:07 ఇప్పుడు కొన్ని random functions గురించి తెలుసుకుందాం.
04:11 rand() functions అనేది 0 నుండి 1 వరకు ఏదైనా యాద్రుచ్చిక సంఖ్య ను తిరిగి ఇస్తాయి. కానీ ఎప్పుడూ 0 లేదా 1 ని తిరిగి ఇవ్వవు.
04:21 ఉత్పత్తి అయిన సంఖ్యలు ఒక awk అమలులోయాద్రుచ్చికంగా ఉంటాయి.
04:27 కానీ awk ప్రోగ్రాం యొక్క వేర్వేరు అమలులో ఉహించదగినది.
04:33 srand(x) function అనేది ఒక random function కొరకు seed value x ని అందిస్తుంది.
04:39 x లేనప్పుడు, రోజు యొక్క తేదీ మరియు సమయం అనేది seed value గా ఉపయోగించబడుతుంది.

వీటిని ఒక ఉదాహరణతో అర్థం చేసుకుందాం.

04:49 నేను ఒక random function కొరకు కోడ్ ను రాసి దానిని random.awk గా సేవ్ చేసాను.
04:56 ఇక్కడ, for loop లోపల, rand() function అనేది 0 మరియు 1 మధ్య ఒక యాద్రుచిక్కసంఖ్య (random number) ను ఉత్పత్తి చేస్తుంది.
05:04 తర్వాత ఉత్పత్తి అయిన సంఖ్య 50 తో గుణించబడి ముద్రించబడుతుంది.
05:10 అందువల్ల ఈ కోడ్ 50 లోపల గల 5యాద్రుచ్చిక సంఖ్యలను ఉత్పత్తి చేస్తుంది.
05:16 టర్మినల్ కు మారి ఫైల్ ను అమలుచేయండి. నేను టర్మినల్ ను ఖాళీ చేస్తాను.
05:23 awk space hyphen f space random dot awk అని టైప్ చేసి ఎంటర్ నొక్కుదాం.
05:31 చూడండి, ఇది 5 యాద్రుచ్చిక సంఖ్యలను ఇస్తుంది.
05:35 ఒకవేళ నేను కోడ్ ని మళ్ళీ అమలుచేస్తే ఏమవుతుందో?
05:39 ముందుగా అమలు పరచిన కమాండ్ కొరకు అప్ యారో కీ ని నొక్కి ఎంటర్ నొక్కండి.
05:47 మనకు అదే ఔట్పుట్ వస్తుంది. దీని అర్థం awk ఒకే రకమైన ర్యాండం నంబర్స్ ని ప్రతి ఒక్క ఎక్సిక్యుశన్ లో ఉత్పత్తి చేస్తుంది.
05:57 మరి మనకు ప్రతి ఎక్సిక్యుశన్ లో ర్యాండమ్ నుంబర్ల యొక్క కొత్త నంబర్ల సెట్ ఎలా వస్తుంది. కోడ్ కి మళ్ళీ మారండి.
06:06 for loop, కన్న ముందు srand() function ని టైపు చేయండి.
06:11 Crtl మరియు S కీలను నొక్కి ఫైల్ ని సేవ్ చేయండి.
06:16 టర్మినల్ కు మారండి.
06:19 ముందుగా అమలు పరచిన కమాండ్ కొరకు అప్ యారో కీ ని నొక్కి ఎంటర్ నొక్కండి.
06:27 అది ర్యాండమ్ నుంబర్ల యొక్క వివిధ జతలను ఇస్తుంది.
06:31 మనం ఒక కొత్త నంబర్ల సెట్ ను srand function, ను argument లేకుండా ఉపయోగించి ఉత్పత్తి చేయవచ్చు.
06:40 తరువాత మనం కొన్ని స్ట్రింగ్ ఫంక్షన్ల గురించి తెలుసుకుందాం. length ఫంక్షన్ ఒక నిర్దిష్ట స్ట్రింగ్ s యొక్క పొడవును ఇస్తుంది.
06:49 index function, ఒక పెద్ద string s1 లో string s2 యొక్క స్థానాన్ని గుర్తిస్తుంది.
06:57 ఉదాహరణకి index parenthesesల లోపల double quotes లోపల linux comma double quotes లోపల n, ఇది 3 ని తిరిగి ఇస్తుంది. ఇప్పుడు ఒక ఉదాహరణని చూద్దాం.
07:10 awkdemo.txt అనే ఫైల్ ని తెరవండి.
07:14 awkdemo.txt ఫైల్ లో ని ప్రతి స్టూడెంట్ 4 అంకెల రోల్ నంబర్ ని (క్రమసంఖ్య) కలిగి ఉన్నారని మనకు తెలుసు.
07:21 టైపింగ్ దోషాల వల్ల రోల్ నంబర్స్ అంకెల యొక్క తప్పుడు సంఖ్యలను కలిగి ఉండవచ్చు. మనం awk commands సాయంతో వాటిని సులువుగా కనుకోగలం.
07:30 టర్మినల్ కు మారండి. ముందుగా నేను టర్మినల్ ను ఖాళీ చేస్తాను.
07:36 ఇప్పుడు కమాండ్ ని ఇక్కడ చూపినవిధంగా టైప్ చేస్తాను. ఇక్కడ మనం మొదటి ఫీల్డ్ యొక్క పొడవు 4 కి సమానామా కాదా అని పరిశీలిస్తాం.
07:46 లేకపొతే, ఆ నిర్దిష్ట రికార్డ్ ముద్రించబడుతుంది. ఎంటర్ నొక్కండి.
07:53 ఇక్కడ ఒక రోల్ నంబర్ S02 అనేది తప్పుగా టైప్ చేయబడిందని గమనించండి.
08:00 అది మూడు అంకెలను కలిగిఉంది. మిగతావన్నీ నాలుగు అంకెలు కలిగి ఉన్నాయి.
08:07 substr (s, a, b) ఫంక్షన్ ఒక పెద్ద స్ట్రింగ్ s నుండి సబ్స్ట్రింగ్ ను ఎక్స్ట్రాక్ట్ చేస్తుంది.
08:14 నేను ఆ పారామీటర్లను వివరిస్తాను.
08:17 ఇక్కడ s అనేది ఒక string.
08:20 a అనేది ప్రారంభమయ్యే ఎక్సట్రాక్షన్ నుండి s లో దాని స్థానాన్ని సూచిస్తుంది.
08:26 b అనేది ఎన్ని క్యారెక్టర్లను సంగ్రహించాలో వాటి సంఖ్యను సూచిస్తుంది. ఒక ఉదాహరణ చూద్దాం.
08:33 awkdemo.txt ఫైల్ కు మారండి.
08:37 రోల్ నంబర్స్ యొక్క మొదటి అక్శరం ఆ నిర్దిష్ట విద్యార్ధి నివసించే Hostel code ను సూచిస్తుంది.
08:46 ఒకవేళ మనం హాస్టల్ A లో నివసించే స్టూడెంట్ ల జాబితాను తెలుసుకోవాలనుకుంటే,
08:52 అది తెలుసుకోవడానికి టర్మినల్ కు మారండి.
08:56 కమాండ్ ని ఇక్కడ చూపినవిధంగా టైప్ చేయండి.
09:00 ఇక్కడ మనం $1 చే సూచించబడిన string ను తీసుకుంటాము.
09:05 $1 అనేది మొదటి ఫీల్డ్ కి ప్రాతినిధ్యం వహిస్తుంది. అది మన సంధర్భం లో రోల్ నంబర్.
09:12 తరువాత, మనం అక్షరం పొడవు వన్ తో స్థానం వన్ వద్ద మొదలయ్యే సబ్స్ట్రింగ్ ను సంగ్రహిస్తాము.
09:19 ఒక వేళా అది కాపిటల్ A కు సమానం ఐతే, ఆ ఫైల్ నుండి ఆ లైన్ ముద్రించబడుతుంది. అవుట్ ఫుట్ చూడడానికి ఎంటర్ నొక్కండి.
09:29 మనకు హాస్టల్ A లో ఉండే స్టూడెంట్ ల జాబితా వచ్చింది.
09:34 మనం ఇంతకుముందే function split ని చూసాం. అందువల్ల నేను దాని గురించి వివరించను.
09:40 మీకు ఏవైనా సందేహాలుంటే మునుపటి awk ట్యుటోరియల్స్ ని చూడండి.
09:45 ఇక్కడ మరికొన్ని Input/Output కి సంభందించిన functions ఉన్నాయి. system() function- awk లోపల ఏదైనా unix కమాండ్ ని అమలు చేయడానికి సహాయపడుతుంది.
09:56 ఇక్కడ, మనం unix command date ని awk command ద్వారా రన్ చేద్దాం.
10:01 టర్మినల్ లో ఇక్కడ చూపినట్టుగా ఈ కమాండ్ ను టైప్ చేసి ఎంటర్ నొక్కండి.
10:09 ఈ రోజు యొక్క తేది మరియు సమయం టర్మినల్ పై ఔట్ పుట్ గా చూపించబడుతాయి.
10:15 ఇది మనకు ఎందుకు అవసరం? మనం కేవలం awk command లోని BEGIN విభాగాన్ని మాత్రమే ఉంచాము.
10:21 కానీ మనం వాస్తవ ప్రపంచ దృశ్యాలలో, అవసరమైన అవుట్పుట్ను ప్రదర్శించే ముందు సిస్టమ్ డేట్ ని ప్రింట్ చేయాలనుకోవచ్చు.
10:28 ఆ సంధర్భం లో మనం awk command లో నుండి system commands ని అమలుచేయాల్సిన అవసరం ఉంటుంది.
10:34 ఇక్కడ time stamps తో వ్యవహరించే కొన్ని functions లు systime(), strftime(), లాంటివి ఉన్నాయి.
10:43 ఇంటర్ నెట్ ద్వారా బ్రౌజ్ చేసి ఈ functions గురించి తెలుసుకొండి.
10:48 ఇంతటి తో ఈ ట్యుటొరియల్ చివరికి వచ్చాం. సారాంశం చూద్దాం.
10:53 ఈ ట్యుటొరియల్ లో మనం వివిధ రకాల built-in functions, అనగా Arithmetic functions, String functions, Input/Output functions మరియు Time stamps functions గురించి తెలుసుకున్నాం.
11:06 ఒక అస్సైన్మెంట్ గా – awkdemo.txt ఫైల్ ను ఉపయోగించి, ప్రతి రెకార్డ్ యొక్క చివరి ఫీల్డ్ ను ముద్రించేలా మరియు
11:13 స్టూడెంట్ పేరు లో మూడవ అక్షరం గా small u ను కలిగి ఉండేలా ఒక awk ప్ప్రొగ్రామ్ను రాయండి.
11:22 ఈ లింక్ వద్ద అందుబాటులో ఉన్న వీడియో స్పోకన్ ట్యుటోరియల్ ప్రాజెక్ట్ యొక్క సారాంశాన్ని ఇస్తుంది. దయచేసి దీనిని డౌన్ లోడ్ చేసి చూడండి.
11:30 స్పొకన్ ట్యుటొరియల్ ప్రాజెక్ట్ వర్క్ షాప్ లను నిర్వహిస్తుంది. ఆన్లైన్ పరీక్షలో పాసైన వారికి సర్టిఫికేట్లను ఇస్తుంది.
11:43 దయచేసి మీ సమయంతో కూడిన సందేహాలను ఈ ఫోరమ్ లో పోస్ట్ చేయండి.
11:47 స్పొకన్ టుటోరియల్ ప్రాజెక్ట్ కి ఎన్ ఎం ఈ ఐ సి టి, ఎం హెచ్ అర్ డి, భారత ప్రభుత్వం నిధులను సమకూర్చుతుంది. ఈ లింక్ లో ఈ మిషన్ గురించి మరింత సమాచారం ఉంది.
11:59 ఈ ట్యుటొరియల్ ని తెలుగులోకి అనువదించినది కరణం స్రవంతి. నేను ఉదయ లక్ష్మి మీ వద్ద సెలవు తీసుకుంటున్నాను ధన్యవాదములు.

Contributors and Content Editors

Madhurig, Simhadriudaya