Difference between revisions of "Linux-AWK/C2/Built-in-Variables-in-awk/Telugu"

From Script | Spoken-Tutorial
Jump to: navigation, search
(Created page with " {| border=1 | <center>'''Time'''</center> | <center>'''Narration'''</center> |- | 00:01 | awk built-in variables and awk script పై స్పొకెన్ ట్యు...")
 
 
(One intermediate revision by the same user not shown)
Line 6: Line 6:
 
|-
 
|-
 
| 00:01
 
| 00:01
| awk built-in variables and awk script పై స్పొకెన్ ట్యుటోరియల్ కు స్వాగతం
+
| awk built-in variables and awk script పై స్పొకెన్ ట్యుటోరియల్ కు స్వాగతం.
 
|-  
 
|-  
 
|00:07
 
|00:07
Line 12: Line 12:
 
|-  
 
|-  
 
| 00:14
 
| 00:14
| మనం దీనిని కొన్ని ఉదాహరణలతో చూద్దాం
+
| మనం దీనిని కొన్ని ఉదాహరణలతో చూద్దాం.
 
|-  
 
|-  
 
| 00:17
 
| 00:17
Line 18: Line 18:
 
|-  
 
|-  
 
| 00:30
 
| 00:30
| ఈ ట్యుటొరియల్ లో ఉపయోగించిన ఫైల్ లు ఈ ట్యుటొరియల్ పేజ్ లో ఉన్నCode Files లింక్ లో అందుబాటులో ఉన్నాయి. దయచేసి డౌన్లోడ్ చేసి సంగ్రహించండి.
+
| ఈ ట్యుటొరియల్ లో ఉపయోగించిన ఫైల్ లు ఈ ట్యుటొరియల్ పేజ్ లో ఉన్న Code Files లింక్ లో అందుబాటులో ఉన్నాయి. దయచేసి డౌన్లోడ్ చేసి సంగ్రహించండి.
 
|-  
 
|-  
 
|00:40
 
|00:40
| ఈ ట్యుటొరియల్ ను అభ్యసించడానికి మీకు మా వెబ్సైట్ లోని మునుపటి awk ట్యుటొరియల్స్  పై అవగాహన ఉండాలి.
+
| ఈ ట్యుటొరియల్ ను అభ్యసించడానికి మీకు మా వెబ్సైట్ లోని మునుపటి awk ట్యుటొరియల్స్  పై అవగాహన ఉండాలి.
 
|-  
 
|-  
 
|00:47
 
|00:47
Line 27: Line 27:
 
|-  
 
|-  
 
|00:52
 
|00:52
| ముందుగా,మనం awk లో కొన్ని built-in variables  ని చూద్దాం.  
+
| ముందుగా, మనం awk లో కొన్ని built-in variables  ని చూద్దాం.  
  
 
|-  
 
|-  
Line 34: Line 34:
 
|-
 
|-
 
|01:07
 
|01:07
| క్యాపిటల్ FS అనేది ఒక input ఫైల్ లో field separator ని పేర్కొంటుంది.
+
|క్యాపిటల్ FS అనేది ఒక input ఫైల్ లో field separator ని పేర్కొంటుంది.
 
|-  
 
|-  
 
|01:13
 
|01:13
Line 40: Line 40:
 
|-
 
|-
 
|01:18
 
|01:18
|  క్యాపిటల్ ORS అనేది output record separator ని నిర్వచిస్తుంది.డీఫాల్ట్ గా అది newline.
+
|  క్యాపిటల్ ORS అనేది output record separator ని నిర్వచిస్తుంది. డీఫాల్ట్ గా అది newline.
 
|-  
 
|-  
 
|01:27
 
|01:27
| క్యాపిటల్ OFS అనేది output field separator ని నిర్వచిస్తుంది.డీఫాల్ట్ గా అది whitespace.
+
| క్యాపిటల్ OFS అనేది output field separator ని నిర్వచిస్తుంది. డీఫాల్ట్ గా అది whitespace.
 
|-  
 
|-  
 
|01:36
 
|01:36
Line 49: Line 49:
 
|-.
 
|-.
 
| 01:40
 
| 01:40
| ఇప్పుడు ''awkdemo''' ఫైల్ ను చూద్దాం.
+
| ఇప్పుడు awkdemo ఫైల్ ను చూద్దాం.
 
|-
 
|-
 
|01:44
 
|01:44
Line 58: Line 58:
 
|-
 
|-
 
|01:58
 
|01:58
| newline అనేది record separator RS variable కొరకు డీఫాల్ట్ విలువ.అందువల్ల ఇంకేమీ చేయనవసరం లేదు.
+
| newline అనేది record separator RS variable కొరకు డీఫాల్ట్ విలువ. అందువల్ల ఇంకేమీ చేయనవసరం లేదు.
 
|-
 
|-
 
| 02:08
 
| 02:08
 
| అన్నిఫీల్డ్ లు pipe symbol ద్వారా వేరు చేయబడ్డాయని గమనించండి.
 
| అన్నిఫీల్డ్ లు pipe symbol ద్వారా వేరు చేయబడ్డాయని గమనించండి.
దాని గురించి మనం awkఎలా తెలియజేయగలం?
+
దాని గురించి మనం awk ఎలా తెలియజేయగలం?
మనం చూద్దాం
+
మనం చూద్దాం.
 
|-
 
|-
 
| 02:18
 
| 02:18
| By d అప్రమేయంగా spaces లేదా tabs యొక్క ఏ సంఖ్య అయినా ఫీల్డ్‌లను వేరు చేస్తాయి.
+
| అప్రమేయంగా spaces లేదా tabs యొక్క ఏ సంఖ్య అయినా ఫీల్డ్‌లను వేరు చేస్తాయి.
 
|-  
 
|-  
 
|02:24
 
|02:24
Line 75: Line 75:
 
|-
 
|-
 
| 02:40
 
| 02:40
| దీనిని ఒక ఉదాహరణతో చేద్దాం.ఒకవేళ నేను 5000 రూపాయలకంటే ఎక్కువ ఉపకార వేతనం వచ్చే విద్యార్థుల పేర్లను తెలుసుకోవాలనుకుంటే
+
| దీనిని ఒక ఉదాహరణతో చేద్దాం. ఒకవేళ నేను 5000 రూపాయలకంటే ఎక్కువ ఉపకార వేతనం వచ్చే విద్యార్థుల పేర్లను తెలుసుకోవాలనుకుంటే,
 
|-  
 
|-  
 
| 02:51
 
| 02:51
Line 87: Line 87:
 
|-
 
|-
 
| 03:08
 
| 03:08
| ఇక్కడ BEGIN విభాగం లో మనం FS విలువని pipe symbol గా అస్సైన్ చేసాము.అదేవిధంగా మనం RS variable ని నవీకరించవచ్చు.
+
| ఇక్కడ BEGIN విభాగం లో మనం FS విలువని pipe symbol గా అస్సైన్ చేసాము. అదేవిధంగా మనం RS variable ని నవీకరించవచ్చు.
 
|-
 
|-
 
| 03:19
 
| 03:19
Line 99: Line 99:
 
|-
 
|-
 
|03:36
 
|03:36
| ఇంకా,అన్ని రెకార్డ్ లు కూడా newline character తో వేరుపరచబడ్డాయి.
+
| ఇంకా, అన్ని రెకార్డ్ లు కూడా newline character తో వేరుపరచబడ్డాయి.
 
|-
 
|-
 
| 03:42
 
| 03:42
| మనం output field separator గా colon ను మరియు డబల్ newline ను output record separator గా కావాలనుకుంటున్నాం అనుకుందాం.
+
| మనం output field separator గా colon ను మరియు డబల్ newline ను output record separator గా కావాలనుకుంటున్నాం అనుకుందాం.
 
|-  
 
|-  
 
|03:52
 
|03:52
| దీన్ని మనం ఎలా చేయగలం? చూద్దాం..
+
| దీన్ని మనం ఎలా చేయగలం? చూద్దాం.
 
|-
 
|-
 
| 03:55
 
| 03:55
Line 117: Line 117:
 
|-
 
|-
 
| 04:12
 
| 04:12
| ఇప్పుడు,ఒకవేళ మన కొత్త ఇన్ పుట్ ఫైల్ అనేది sample.txt ఐతే.
+
| ఇప్పుడు, ఒకవేళ మన కొత్త ఇన్ పుట్ ఫైల్ అనేది sample.txt ఐతే.
 
|-  
 
|-  
 
|04:18
 
|04:18
Line 126: Line 126:
 
|-  
 
|-  
 
|04:32
 
|04:32
| అవును,మీరు అనుకున్నది సరైనదే.మనం FS మరియు RS రెండూ variables ని నవీకరించాల్సిఉంటుంది.
+
| అవును, మీరు అనుకున్నది సరైనదే. మనం FS మరియు RS రెండూ variables ని నవీకరించాల్సి ఉంటుంది.
 
|-
 
|-
 
|04:39
 
|04:39
Line 132: Line 132:
 
|-
 
|-
 
| 04:43
 
| 04:43
| తర్వాత,వేరే built-in variables ను చూద్దాం.
+
| తర్వాత, వేరే built-in variables ను చూద్దాం.
 
|-
 
|-
 
|04:47
 
|04:47
Line 144: Line 144:
 
|-
 
|-
 
| 05:07
 
| 05:07
| Here, incomplete line means it has less than the normal 6 fields.
+
| ఇక్కడ, అసంపూర్ణంగా అంటే అది 6 కంటే తక్కువ సాధారణ ఫీల్డ్స్ తో ఉండడం.
 
+
|-
|-ఇక్కడ, అసంపూర్ణంగా అంటే అది 6 కంటే తక్కువ సాధారణ ఫీల్డ్స్ ఉండడం.
+
 
| 05:13
 
| 05:13
| టర్మినల్ కు మారండి.నేను Ctrl మరియు L కీలను ఉపయోగించి దీనిని ఖాళీ చేస్తాను.
+
| టర్మినల్ కు మారండి. నేను Ctrl మరియు L కీలను ఉపయోగించి దీనిని ఖాళీ చేస్తాను.
 
|-  
 
|-  
 
| 05:20
 
| 05:20
Line 163: Line 162:
 
|-  
 
|-  
 
| 05:43
 
| 05:43
| ఒకవేళ అది సత్యం ఐతే అపుడు print section, రెకార్డ్ యొక్క లైన్ నంబర్ NR ను $0 చేత సూచించబడిన మొత్తం లైన్ తొ పాటు ముద్రిస్తుంది.  
+
| ఒకవేళ అది సత్యం ఐతే అపుడు print section, రెకార్డ్ యొక్క లైన్ నంబర్ NR ను $0 చేత సూచించబడిన మొత్తం లైన్ తో పాటు ముద్రిస్తుంది.  
 
ఎంటర్ నొక్కండి.  
 
ఎంటర్ నొక్కండి.  
 
|-  
 
|-  
Line 193: Line 192:
 
|-
 
|-
 
| 06:57
 
| 06:57
| ఇక్కడ రెండు ఫైళ్ళ యొక్క కంటెంట్స్ ఉన్నాయి.  
+
| ఇక్కడ రెండు ఫైళ్ళ యొక్క కంటెంట్లు ఉన్నాయి.  
 
|-
 
|-
 
| 07:02
 
| 07:02
Line 202: Line 201:
 
|-
 
|-
 
| 07:13
 
| 07:13
| అవుట్పుట్ demo1.txt ఫైల్ యొక్క మొదటి 3 రికార్డులను మాత్రమే చూపిస్తుంది.  
+
| అవుట్పుట్ అనేది demo1.txt ఫైల్ యొక్క మొదటి 3 రికార్డులను మాత్రమే చూపిస్తుంది.  
 
|-
 
|-
 
| 07:20
 
| 07:20
Line 208: Line 207:
 
|-
 
|-
 
| 07:24
 
| 07:24
| దీనికి పరిష్కారం NR కు బదులుగా FNR ను ఉపయోగించడం  
+
| దీనికి పరిష్కారం NR కు బదులుగా FNR ను ఉపయోగించడం  
 
FNR అంటె ప్రస్తుత ఫైల్ లోని current record number.
 
FNR అంటె ప్రస్తుత ఫైల్ లోని current record number.
 
|-
 
|-
 
| 07:34
 
| 07:34
|ఒక క్రొత్త రికార్డ్ చదివిన ప్రతిసారీ FNR పెరుగుతుంది.
+
|ఒక క్రొత్త రికార్డ్ చదివిన ప్రతిసారీ FNR పెరుగుతుంది.
 
|-
 
|-
 
| 07:39
 
| 07:39
Line 218: Line 217:
 
|-
 
|-
 
| 07:46
 
| 07:46
| కానీ NR అనేది awk ప్రొగ్రాం ఎక్సిక్యుశన్ ప్రారంభిచినప్పటి నుండి ప్రాసెస్ చేసిన ఇన్ పుట్ రెకార్డ్ ల యొక్క సంఖ్య.   
+
| కానీ NR అనేది awk ప్రొగ్రాం ఎక్సిక్యుశన్ ప్రారంభిచినప్పటి నుండి ప్రాసెస్ చేసిన ఇన్ పుట్ రెకార్డ్ ల యొక్క సంఖ్య.   
 
|-
 
|-
 
| 07:55
 
| 07:55
Line 228: Line 227:
 
|-
 
|-
 
| 08:06
 
| 08:06
| మునుపటి కమాండ్ ను క్రింది విధంగా సవరించండి.
+
| మునుపటి కమాండ్ ను క్రింది విధంగా సవరించండి.
 
NR కి బదులు  FNR అని టైప్ చేయండి.  
 
NR కి బదులు  FNR అని టైప్ చేయండి.  
 
|-
 
|-
Line 235: Line 234:
 
|-
 
|-
 
| 08:21
 
| 08:21
| చుడండి, ఇప్పుడు సరైన ఔట్ పుట్ వచ్చింది.
+
| చూడండి, ఇప్పుడు సరైన ఔట్ పుట్ వచ్చింది.
 
FNR క్రొత్త ఫైల్‌తో సున్నాకి సెట్ చేయబడింది, కానీ NR పెరుగుతూనే ఉంటుంది.
 
FNR క్రొత్త ఫైల్‌తో సున్నాకి సెట్ చేయబడింది, కానీ NR పెరుగుతూనే ఉంటుంది.
 
|-
 
|-
 
| 08:31
 
| 08:31
|ఇప్పుదు వేరే built-in variables ని చూద్దాం.
+
|ఇప్పుడు వేరే built-in variables ని చూద్దాం.
 
FILENAME వేరియబుల్, చదువుతున్న ఫైల్ యొక్క పేరుని ఇస్తుంది.  
 
FILENAME వేరియబుల్, చదువుతున్న ఫైల్ యొక్క పేరుని ఇస్తుంది.  
 
|-
 
|-
Line 249: Line 248:
 
|-
 
|-
 
| 08:52
 
| 08:52
| ENVIRON అనేది shell environment variables యొక్క array ను మరియ్ దాని సంబంధిత విలువలను సూచిస్తుంది.
+
| ENVIRON అనేది shell environment variables యొక్క array ను మరియు దాని సంబంధిత విలువలను సూచిస్తుంది.
 
|-
 
|-
 
| 09:00
 
| 09:00
| ARGV మరియు ENVIRON లు awk లో array ని ఉపయోగిస్తున్నందున. వాటిని మనం తరువాత టుటోరియల్స్ లో చూద్దా౦.  
+
| awk లో array ని ఉపయోగిస్తున్నందున ARGV మరియు ENVIRON లు. వాటిని మనం తరువాత టుటోరియల్స్ లో చూద్దా౦.  
 
|-
 
|-
 
| 09:09
 
| 09:09
Line 269: Line 268:
 
|-
 
|-
 
| 09:37
 
| 09:37
| ఇది ఎందుకంటే, ఈ కమాండ్ awkdemo.txt ఫైల్‌లోని ప్రతి రో కు   ఒకసారి ఫైల్ పేరును ప్రింట్ చేస్తుంది.
+
| ఇది ఎందుకంటే, ఈ కమాండ్ awkdemo.txt ఫైల్‌లోని ప్రతి రో కు ఒకసారి ఫైల్ పేరును ప్రింట్ చేస్తుంది.
మనం దీన్ని ఒక్కసారి మాత్రమె ఎలా ముద్రిందాలి ?  
+
మనం దీన్ని ఒక్కసారి మాత్రమె ఎలా ముద్రిందాలి?  
 
|-
 
|-
 
| 09:48
 
| 09:48
Line 284: Line 283:
 
|-
 
|-
 
| 10:06
 
| 10:06
|  
+
| ఇక్కడ awk లో మరికొన్ని built-in variables ఉన్నాయి.  
ఇక్కడ awk లో మరికొన్ని built-in variables ఉన్నాయి.  
+
 
వాటి గురించి మరింత తెలుసుకోవడానికి దయచేసి ఇంటర్నెట్‌ను బ్రౌజ్ చేయండి.
 
వాటి గురించి మరింత తెలుసుకోవడానికి దయచేసి ఇంటర్నెట్‌ను బ్రౌజ్ చేయండి.
 
|-
 
|-
 
| 10:14
 
| 10:14
| మనం, పాస్ అయ్యి  రూ .8000 కంటే ఎక్కువ స్టైఫండ్ ఉన్న విద్యార్థులను కనుగొనాలని అనుకుందాం
+
| మనం, పాస్ అయ్యి  రూ 8000 కంటే ఎక్కువ స్టైఫండ్ ఉన్న విద్యార్థులను కనుగొనాలని అనుకుందాం.
 
|-
 
|-
 
| 10:22
 
| 10:22
 
| comma  ని output field separator గా ఉపయోగించండి.
 
| comma  ని output field separator గా ఉపయోగించండి.
ఫైల్ కొరకు చూపబడుతున్న డేటాను  మరియు ఫైల్ యొక్క పేరును footer section లో ప్రింట్ చేయండి
+
ఇంకా the data is shown for fileను మరియు ఫైల్ యొక్క పేరును footer section లో ప్రింట్ చేయండి.
 
ఇది ఎలా చేయగలం?
 
ఇది ఎలా చేయగలం?
 
|-
 
|-
Line 300: Line 298:
 
|-
 
|-
 
| 10:43
 
| 10:43
| ఒక విద్యార్థి మాత్రమే పాస్ అయ్యి రూ .8000 కన్నా ఎక్కువ స్టైఫండ్ పొందుతున్నట్లు మనం చూడవచ్చు.  
+
| ఒక విద్యార్థి మాత్రమే పాస్ అయ్యి రూ. 8000 కన్నా ఎక్కువ స్టైఫండ్ పొందుతున్నట్లు మనం చూడవచ్చు.  
 
మరియు రికార్డు సంఖ్య 2.
 
మరియు రికార్డు సంఖ్య 2.
 
|-
 
|-
Line 313: Line 311:
 
|-
 
|-
 
|11:09
 
|11:09
| బదులుగా మనం awk ప్రోగ్రామ్‌ను ప్రత్యేక ఫైల్‌లో వ్రాయవచ్చు.
+
| బదులుగా మనం awk ప్రోగ్రామ్‌ను ప్రత్యేక ఫైల్‌లో వ్రాయవచ్చు.
 
|-
 
|-
 
| 11:14
 
| 11:14
Line 333: Line 331:
 
| 11:46
 
| 11:46
 
| టర్మినల్ కి మారండి.
 
| టర్మినల్ కి మారండి.
చివరిగా అమలు చేయబడిన కమాండ్ యొక్క సింగిల్ కోట్స్ లోపల మనం ఏమి వ్రాసాము చుడండి?
+
చివరిగా అమలు చేయబడిన కమాండ్ యొక్క సింగిల్ కోట్స్ లోపల మనం ఏమి వ్రాసాము చుడండి?
 
|-
 
|-
 
|11:55
 
|11:55
Line 345: Line 343:
 
|-
 
|-
 
| 12:24
 
| 12:24
| We are getting exactly the same output as we have seen before.
+
|మనకు ఇంతకు ముందువచ్చినట్టుగానే ఔట్ పుట్ వచ్చింది.
 
+
|-
|-మనకు ఇంతకుముందువచ్చినట్టుగానే ఔట్ పుట్ వచ్చింది.
+
 
|12:29
 
|12:29
| కనుక, ఈ విధంగా మనం awk ప్రోగ్రామ్‌లను వ్రాసి, వాటిని చాలాసార్లు ఉపయోగించవచ్చు
+
| కనుక, ఈ విధంగా మనం awk ప్రోగ్రామ్‌లను వ్రాసి, వాటిని చాలాసార్లు ఉపయోగించవచ్చు.
 
|-
 
|-
 
| 12:35
 
| 12:35
Line 355: Line 352:
 
|-
 
|-
 
| 12:40
 
| 12:40
| ఈ ట్యుటోరియల్ లో మనం ‌- Built-in variables,awk script లను గురించి
+
| ఈ ట్యుటోరియల్ లో మనం ‌- Built-in variables, awk script లను గురించి పలు ఉదాహరణలను ఉపయోగించి నేర్చుకున్నాం.
పలు ఉదాహరణల ఉపయోగించి నేర్చుకున్నాం.
+
 
|-
 
|-
 
| 12:48
 
| 12:48
| ఒక అస్సైన్మెంట్ ‌‌‌‌‌‌-awkdemo.txt file లో 5వ లైన్ లోని చివరి ఫీల్డ్ ను ప్రింట్ చేయడానికి ఒక awk స్క్రిప్ట్ ను రాయండి.
+
| ఒక అస్సైన్మెంట్ ‌‌‌‌‌‌-awkdemo.txt file లో 5వ లైన్ లోని చివరి ఫీల్డ్ ను ప్రింట్ చేయడానికి ఒక awk స్క్రిప్ట్ ను రాయండి.
 
|-
 
|-
 
| 12:58
 
| 12:58
Line 368: Line 364:
 
|-
 
|-
 
|13:09
 
|13:09
| ఇప్పుడు 20వ లైన్ నుండి ఫైల్ ను ప్రాసెస్ చేయడానికి ఒక script ని రాయండి.
+
| ఇప్పుడు 20వ లైన్ నుండి ఫైల్ ను ప్రాసెస్ చేయడానికి ఒక script ని రాయండి.
 
|-  
 
|-  
 
|13:15
 
|13:15
Line 389: Line 385:
 
|-
 
|-
 
| 14:03
 
| 14:03
| ఈ ట్యుటొరియల్ ని తెలుగులోకి అనువదించినది కరణం స్రవంతి. నేను ఉదయ లక్ష్మి మీ వద్ద సెలవు తీసుకుంటున్నాను ధన్యవాదములు.
+
| ఈ ట్యుటొరియల్ ని తెలుగులోకి అనువదించినది కరణం స్రవంతి. నేను ఉదయ లక్ష్మి మీ వద్ద సెలవు తీసుకుంటున్నాను మాతో చేరినందుకు ధన్యవాదములు.
 
|-
 
|-
 
|}
 
|}

Latest revision as of 19:07, 19 July 2019

Time
Narration
00:01 awk built-in variables and awk script పై స్పొకెన్ ట్యుటోరియల్ కు స్వాగతం.
00:07 ఈ ట్యుటోరియల్ లో మనం Built-in variables, awk script గురించి తెలుసుకుంటాం.
00:14 మనం దీనిని కొన్ని ఉదాహరణలతో చూద్దాం.
00:17 ఈ ట్యుటోరియల్ ని రెకార్డ్ చేయడానికి నేను ఉబంటులినక్స్ 16.04 ఆపరేటింగ్ సిస్టం మరియు జిఎడిట్ టెక్స్ట్ ఎడిటర్ 3.20.1 ని ఉపయోగిస్తున్నాను.
00:30 ఈ ట్యుటొరియల్ లో ఉపయోగించిన ఫైల్ లు ఈ ట్యుటొరియల్ పేజ్ లో ఉన్న Code Files లింక్ లో అందుబాటులో ఉన్నాయి. దయచేసి డౌన్లోడ్ చేసి సంగ్రహించండి.
00:40 ఈ ట్యుటొరియల్ ను అభ్యసించడానికి మీకు మా వెబ్సైట్ లోని మునుపటి awk ట్యుటొరియల్స్ పై అవగాహన ఉండాలి.
00:47 లేదంటే, తత్సంభంధిత ట్యుటొరియల్స్ కొరకు మా వెబ్ సైట్ ని సంప్రదించండి.
00:52 ముందుగా, మనం awk లో కొన్ని built-in variables ని చూద్దాం.
00:57 క్యాపిటల్ RS అనేది ఒక input ఫైల్ లో record separator ని పేర్కొంటుంది. అప్రమేయంగా, ఇది newline.
01:07 క్యాపిటల్ FS అనేది ఒక input ఫైల్ లో field separator ని పేర్కొంటుంది.
01:13 డీఫాల్ట్ గా FS విలువ అనేది ఒక whitespace.
01:18 క్యాపిటల్ ORS అనేది output record separator ని నిర్వచిస్తుంది. డీఫాల్ట్ గా అది newline.
01:27 క్యాపిటల్ OFS అనేది output field separator ని నిర్వచిస్తుంది. డీఫాల్ట్ గా అది whitespace.
01:36 మనం వీటిలో ప్రతి ఒక్కదాని అర్ధాన్ని అర్థం చేసుకుందాం.
01:40 ఇప్పుడు awkdemo ఫైల్ ను చూద్దాం.
01:44 మనం awk కమాండ్ తో ఈ awkdemo ఫైల్ ని ప్రాసెస్ చేసేటప్పుడు అది input ఫైల్ అవుతుంది.
01:51 అన్ని రెకార్డ్ లు ఒకదానితో ఒకటి ఒక newline character ద్వారా వేరుచేయబడ్డాయి అని గమనించండి.
01:58 newline అనేది record separator RS variable కొరకు డీఫాల్ట్ విలువ. అందువల్ల ఇంకేమీ చేయనవసరం లేదు.
02:08 అన్నిఫీల్డ్ లు pipe symbol ద్వారా వేరు చేయబడ్డాయని గమనించండి.

దాని గురించి మనం awk ఎలా తెలియజేయగలం? మనం చూద్దాం.

02:18 అప్రమేయంగా spaces లేదా tabs యొక్క ఏ సంఖ్య అయినా ఫీల్డ్‌లను వేరు చేస్తాయి.
02:24 మనం ఇంతకుముందు ట్యుటొరియల్ లో నేర్చుకున్నట్లు hyphen capital F ఎంపిక యొక్క సహాయంతో దీన్ని రీసెట్ చేయవచ్చు.
02:33 లేదంటే, మనం దీనిని BEGIN section లోని FS variable ను ఉపయోగించి రీసెట్ చేయవచ్చు.
02:40 దీనిని ఒక ఉదాహరణతో చేద్దాం. ఒకవేళ నేను 5000 రూపాయలకంటే ఎక్కువ ఉపకార వేతనం వచ్చే విద్యార్థుల పేర్లను తెలుసుకోవాలనుకుంటే,
02:51 CTRL, ALT మరియు T కీలను నొక్కి టర్మినల్ ను తెరవండి.
02:57 తరువాత, మీరు cd command ద్వారా డౌన్ లోడ్ చేసి సంగ్రహించిన Code Files ఉన్న ఫోల్డర్ కి వెళ్ళండి.
03:04 కమాండ్ ని ఇక్కడ చూపిన విధంగా టైప్ చేయండి.
03:08 ఇక్కడ BEGIN విభాగం లో మనం FS విలువని pipe symbol గా అస్సైన్ చేసాము. అదేవిధంగా మనం RS variable ని నవీకరించవచ్చు.
03:19 కమాండ్ అమలు పరచడానికి ఎంటర్ నొక్కండి.
03:23 5000 రూపాయలకంటే ఎక్కువ ఉపకార వేతనం వచ్చే విద్యార్థుల పేర్లజాబితాను చూపిస్తుంది.
03:30 ఇక్కడ name field మరియు stipend field ఒక ఖాళీ space తో వేరుపరచబడ్డాయి.
03:36 ఇంకా, అన్ని రెకార్డ్ లు కూడా newline character తో వేరుపరచబడ్డాయి.
03:42 మనం output field separator గా colon ను మరియు డబల్ newline ను output record separator గా కావాలనుకుంటున్నాం అనుకుందాం.
03:52 దీన్ని మనం ఎలా చేయగలం? చూద్దాం.
03:55 టర్మినల్ లో ఇంతకు ముందు అమలుచేసిన కమాండ్ ను పొందడానికి అప్ యారో కీ ని నొక్కండి.
04:01 ఇక్కడ చూపినవిధంగా కమాండ్ ని నవీకరించి ఎంటర్ నొక్కండి.
04:08 మనకు కావలసిన ఫార్మ్యాట్ లో ఔట్ పుట్ వస్తుంది.
04:12 ఇప్పుడు, ఒకవేళ మన కొత్త ఇన్ పుట్ ఫైల్ అనేది sample.txt ఐతే.
04:18 గమనించండి ఇక్కడ field separator అనేది newline మరియు record separator అనేది double newline.
04:27 మనం రోల్ నంబర్ మరియు పేరు సమాచారం ని ఈ ఫైల్ నుండి ఎలా వెలికితీయవచ్చు.
04:32 అవును, మీరు అనుకున్నది సరైనదే. మనం FS మరియు RS రెండూ variables ని నవీకరించాల్సి ఉంటుంది.
04:39 ఈ ట్యుటోరియల్ ని పాజ్ చేసి ఈ అస్సైన్ మెంట్ చేయండి.
04:43 తర్వాత, వేరే built-in variables ను చూద్దాం.
04:47 క్యాపిటల్ NR అనేది awk వల్ల ప్రాసెస్ అయిన Number of Records ని ఇస్తుంది.
04:53 క్యాపిటల్ NF అనేది ప్రస్తుత రెకార్డ్ లోని Number of Fields ని ఇస్తుంది.
04:59 ఒక ఉదాహరణను మనం చూద్దాం. మనం ఈ ఫైల్ లోని అసంపూర్ణంగా ఉన్న లైన్ లను కనుగొనాలనుకుంటున్నాం అనుకుందాం.
05:07 ఇక్కడ, అసంపూర్ణంగా అంటే అది 6 కంటే తక్కువ సాధారణ ఫీల్డ్స్ తో ఉండడం.
05:13 టర్మినల్ కు మారండి. నేను Ctrl మరియు L కీలను ఉపయోగించి దీనిని ఖాళీ చేస్తాను.
05:20 ఇక్కడ చూపిన విధంగా కమాండ్ ను టైప్ చేయండి.
05:24 ఫీల్డ్ లు pipe గుర్తు ద్వారా వేరుచేయబడ్డాయి కాబట్టి BEGIN విభాగం లో FS విలువను pipe గుర్తుకు సెట్ చేయండి.
05:33 తర్వాత మనం NF not equal to 6 అని రాసాం.
05:37 ఇది ప్రస్తుత లైన్ లో ఫీల్డ్ ల యొక్క సంఖ్య 6 కి సమానం కాదా అని తనిఖీ చేస్తుంది.
05:43 ఒకవేళ అది సత్యం ఐతే అపుడు print section, రెకార్డ్ యొక్క లైన్ నంబర్ NR ను $0 చేత సూచించబడిన మొత్తం లైన్ తో పాటు ముద్రిస్తుంది.

ఎంటర్ నొక్కండి.

05:55 అవుట్పుట్లో, రికార్డ్ నంబర్ 16 అనేది అసంపూర్ణ రోకార్డ్. ఇది 6 కి బదులుగా 5 ఫీల్డ్‌లు మాత్రమే కలిగిఉంది అని మనం చూడవచ్చు.
06:05 మనం మరో ఉదాహరణ చూద్దాం.

ఎన్ని ఫీల్డ్‌లు ఉన్నప్పటికీ, ప్రతి విద్యార్థికి మొదటి మరియు చివరి ఫీల్డ్ ను మనం ఎలా ముద్రించవచ్చు?

06:16 ఇక్కడ కనిపిస్తున్న కమాండ్ ని టర్మినల్ లో టైప్ చెయండి.
06:21 ఇక్కడ మనం ఫస్ వేరియబుల్ ని సెట్ చేయడానికి బదులుగా హైఫన్ క్యాపిటల్ F ఎంపికను ఉపయోగించాము.

ఎంటర్ నొక్కండి.

06:30 ఫైల్‌లోని ప్రతి రికార్డ్‌ కొరకు మనం మొదటి మరియు చివరి ఫీల్డ్‌లు మాత్రమే పొందుతాం.
06:36 ఇప్పుడు ఇంకేమైనా ప్రయత్నిదాం.
06:39 విద్యార్థి రికార్డులు అనేవి demo1.txt, demo2.txt అనే రెండు ఫైళ్ళలో పంపిణీ చేయబడతాయి అనుకుందాం.
06:48 మనం ఈ రెండు ఫైళ్ళ నుండి మొదటి 3 లైన్ లను ముద్రించాలనుకుంటున్నాము. దీనిని మనం NR వేరియబుల్ ను ఉపయోగించి చేయవచ్చు.
06:57 ఇక్కడ రెండు ఫైళ్ళ యొక్క కంటెంట్లు ఉన్నాయి.
07:02 ఇప్పుడు ప్రతి ఫైల్ నుండి మొదటి 3 లైన్ లను ప్రదర్శించడానికి, కింది కమాండ్ ను టెర్మినల్‌లో టైప్ చేయండి.
07:11 ఎంటర్ నొక్కండి.
07:13 అవుట్పుట్ అనేది demo1.txt ఫైల్ యొక్క మొదటి 3 రికార్డులను మాత్రమే చూపిస్తుంది.
07:20 రెండవ ఫైల్ కోసం కూడా దీనినే మనం ఎలా ప్రింట్ చేయవచ్చు?
07:24 దీనికి పరిష్కారం NR కు బదులుగా FNR ను ఉపయోగించడం

FNR అంటె ప్రస్తుత ఫైల్ లోని current record number.

07:34 ఒక క్రొత్త రికార్డ్ చదివిన ప్రతిసారీ FNR పెరుగుతుంది.
07:39 క్రొత్త ఇన్పుట్ ఫైల్ ప్రారంభించిన ప్రతిసారీ ఇది సున్నాకు తిరిగి ప్రారంభించబడుతుంది.
07:46 కానీ NR అనేది awk ప్రొగ్రాం ఎక్సిక్యుశన్ ప్రారంభిచినప్పటి నుండి ప్రాసెస్ చేసిన ఇన్ పుట్ రెకార్డ్ ల యొక్క సంఖ్య.
07:55 ఇది క్రొత్త ఫైల్‌తో సున్నాకి రీసెట్ చేయబడదు.
07:59 టర్మినల్ కు మారండి.

up arrow కీని నొక్కి ముందు ఎక్సిక్యుట్ చెసిన కమాండ్ ని పొందండి.

08:06 మునుపటి కమాండ్ ను క్రింది విధంగా సవరించండి.

NR కి బదులు FNR అని టైప్ చేయండి.

08:14 Print section, లో NR, తరువాత FNR టైప్ చెసి ఎంటర్ నొక్కండి.
08:21 చూడండి, ఇప్పుడు సరైన ఔట్ పుట్ వచ్చింది.

FNR క్రొత్త ఫైల్‌తో సున్నాకి సెట్ చేయబడింది, కానీ NR పెరుగుతూనే ఉంటుంది.

08:31 ఇప్పుడు వేరే built-in variables ని చూద్దాం.

FILENAME వేరియబుల్, చదువుతున్న ఫైల్ యొక్క పేరుని ఇస్తుంది.

08:40 ARGC, కమాండ్ లైన్ వద్ద అందించిన ఆర్గ్యుమెంట్స్ సంఖ్యను సూచిస్తుంది.
08:46 ARGV, కమాండ్ లైన్ అర్గ్యుమెంట్ లను స్టొర్ చేసె అర్రె ని సూచిస్తుంది.
08:52 ENVIRON అనేది shell environment variables యొక్క array ను మరియు దాని సంబంధిత విలువలను సూచిస్తుంది.
09:00 awk లో array ని ఉపయోగిస్తున్నందున ARGV మరియు ENVIRON లు. వాటిని మనం తరువాత టుటోరియల్స్ లో చూద్దా౦.
09:09 ఇప్పుడు FILENAME వేరియబల్ ని చూద్దా౦.

ప్రాసెస్ చేయబడుతున్న ప్రస్తుత ఫైల్ పేరును మనం ఎలా ప్రింట్ చేయవచ్చు?

09:18 టెర్మినల్ కు మారి, చూపిన విధంగా కమాండ్ ను టైప్ చేయండి.
09:23 ఇక్కడ మనం space ని string concatenation operator గా ఉపయోగించాము.

కమాండ్ ను అమలుచేయడానికి ఎంటర్ నొక్కండి.

09:32 అవుట్పుట్, ఇన్పుట్ ఫైల్ పేరు ను చాలాసార్లు చూపిస్తుంది.
09:37 ఇది ఎందుకంటే, ఈ కమాండ్ awkdemo.txt ఫైల్‌లోని ప్రతి రో కు ఒకసారి ఫైల్ పేరును ప్రింట్ చేస్తుంది.

మనం దీన్ని ఒక్కసారి మాత్రమె ఎలా ముద్రిందాలి?

09:48 టర్మినల్ ని క్లియర్ చేయండి.

మునుపు ఎక్సిక్యుట్ చేసిన కమాండ్ ను పొందడానికి అప్ యారో కీని నొక్కండి.

09:55 ఇక్కడ చూపిన విధంగా మునుపటి కమాండ్ ను సవరించండి.

ఎంటర్ నొక్కండి.

10:02 ఇప్పుడు, మనము ఫైల్ పేరును ఒక్కసారి మాత్రమే పొందుతాము.
10:06 ఇక్కడ awk లో మరికొన్ని built-in variables ఉన్నాయి.

వాటి గురించి మరింత తెలుసుకోవడానికి దయచేసి ఇంటర్నెట్‌ను బ్రౌజ్ చేయండి.

10:14 మనం, పాస్ అయ్యి రూ 8000 కంటే ఎక్కువ స్టైఫండ్ ఉన్న విద్యార్థులను కనుగొనాలని అనుకుందాం.
10:22 comma ని output field separator గా ఉపయోగించండి.

ఇంకా the data is shown for fileను మరియు ఫైల్ యొక్క పేరును footer section లో ప్రింట్ చేయండి. ఇది ఎలా చేయగలం?

10:36 టర్మినల్ లో ఇక్కడ చూపించినట్టు కమండ్ ని టైప్ చేసి ఎంటర్ నొక్కండి.
10:43 ఒక విద్యార్థి మాత్రమే పాస్ అయ్యి రూ. 8000 కన్నా ఎక్కువ స్టైఫండ్ పొందుతున్నట్లు మనం చూడవచ్చు.

మరియు రికార్డు సంఖ్య 2.

10:53 మనం కోరుకున్న విధంగా ఫైల్ పేరును కూడా footer లో చూడవచ్చు.
10:58 మనం awk ని చాలా చాలా క్లిష్టమైన పనుల కొరకు ఉపయోగించవచ్చు.
11:03 అలాంటప్పుడు, టెర్మినల్ పై ప్రతిసారీ కమాండ్స్ ను రాయడం మరింత కష్టమవుతుంది.
11:09 బదులుగా మనం awk ప్రోగ్రామ్‌ను ప్రత్యేక ఫైల్‌లో వ్రాయవచ్చు.
11:14 ఎగ్జిక్యూటబుల్ కావడానికి, ఆ ఫైల్‌కు dot awk ఎక్స్టెన్షన్ ఉండాలి.
11:19 అమలు చేస్తున్నప్పుడు, మనం ఈ awk ప్రోగ్రామ్ ఫైల్ పేరును awk కమాండ్ తో పేర్కొనవచ్చు.
11:26 అలా చేయడానికి, మనం hyphen small f ఎంపికను ఉపయోగించాలి.

ఒక ఉదాహరణ చూద్దా౦.

11:35 నెను ఇంతకుముందే ఒక awk ప్రోగ్రాం ని రాసి దానిని prog1 dot awk గా సేవ్ చేసి ఉంచాను.
11:42 ఈ ఫైల్ Code Files లింక్ లో అందుబాటులో ఉంది.
11:46 టర్మినల్ కి మారండి.

చివరిగా అమలు చేయబడిన కమాండ్ యొక్క సింగిల్ కోట్స్ లోపల మనం ఏమి వ్రాసాము చుడండి?

11:55 Prog1.awk ఫైల్ యొక్క కంటెంట్ సరిగ్గా అదే.
12:00 ఒకే ఒక్క తేడా ఏమిటంటే awk ఫైల్ లో మనం single quotes లోపల ఏమీ రాయలేదు.
12:07 దీనిని అమలు చేయడానికి, టర్మినల్ లో కింది కమాండ్ awk space hyphen small f space prog1.awk space awkdemo.txt ను టైప్ చేసి ఎంటర్ నొక్కండి.
12:24 మనకు ఇంతకు ముందువచ్చినట్టుగానే ఔట్ పుట్ వచ్చింది.
12:29 కనుక, ఈ విధంగా మనం awk ప్రోగ్రామ్‌లను వ్రాసి, వాటిని చాలాసార్లు ఉపయోగించవచ్చు.
12:35 ఇంతటి తో ఈ ట్యుటోరియల్ చివరికి వచ్చాం. సారాంశం చూద్దాం
12:40 ఈ ట్యుటోరియల్ లో మనం ‌- Built-in variables, awk script లను గురించి పలు ఉదాహరణలను ఉపయోగించి నేర్చుకున్నాం.
12:48 ఒక అస్సైన్మెంట్ ‌‌‌‌‌‌-awkdemo.txt file లో 5వ లైన్ లోని చివరి ఫీల్డ్ ను ప్రింట్ చేయడానికి ఒక awk స్క్రిప్ట్ ను రాయండి.
12:58 సిస్టమ్ ఫైల్ /etc/passwd ను terminal పై తెరవండి.
13:05 అక్కడ ఉన్న అన్ని separators లను గుర్తించండి.
13:09 ఇప్పుడు 20వ లైన్ నుండి ఫైల్ ను ప్రాసెస్ చేయడానికి ఒక script ని రాయండి.
13:15 అది కూడా 6 కంటే ఎక్కువ ఫీల్డ్‌లను కలిగి ఉన్న లైన్ ల కొరకు మాత్రమే.
13:20 మీరు నిర్దిష్ట పంక్తిలో line number, మొత్తం లైన్ మరియు ఫీల్డ్ ల యొక్క కౌంట్ ను ప్రింట్ చేయాలి.
13:28 ఈ లింక్ వద్ద అందుబాటులో ఉన్న వీడియో స్పోకన్ ట్యుటోరియల్ ప్రాజెక్ట్ యొక్క సారాంశాన్ని ఇస్తుంది. దయచేసి దీనిని డౌన్ లోడ్ చేసి చూడండి.
13:36 స్పొకెన్ ట్యుటొరియల్ ప్రాజెక్ట్ వర్క్ శాప్ లను నిర్వహిస్తుంది.ఆన్లైన్ పరీక్షలో పాసైన వారికి సర్టిఫికేట్లను ఇస్తుంది.
13:47 దయచేసి మీ సమయంతో కూడిన సందేహాలను ఈ ఫోరమ్ లో పోస్ట్ చేయండి.
13:51 స్పొకన్ టుటోరియల్ ప్రాజెక్ట్ కి ఎన్ ఎం ఈ ఐ సి టి, ఎం హెచ్ అర్ డి, భారత ప్రభుత్వం నిధులను సమకూర్చుతుంది. ఈ లింక్ లో ఈ మిషన్ గురించి మరింత సమాచారం ఉంది.
14:03 ఈ ట్యుటొరియల్ ని తెలుగులోకి అనువదించినది కరణం స్రవంతి. నేను ఉదయ లక్ష్మి మీ వద్ద సెలవు తీసుకుంటున్నాను మాతో చేరినందుకు ధన్యవాదములు.

Contributors and Content Editors

Madhurig, Simhadriudaya