Difference between revisions of "Linux-AWK/C2/Basics-of-awk/English"
Nancyvarkey (Talk | contribs) |
Nancyvarkey (Talk | contribs) m (Nancyvarkey moved page Linux/C3/Basics-of-awk/English to Linux-AWK/C2/Basics-of-awk/English without leaving a redirect: New series) |
||
(One intermediate revision by the same user not shown) | |||
Line 249: | Line 249: | ||
− | We can also provide a serial number by using a builtin variable NR. | + | We can also provide a serial number by using a builtin variable '''NR'''. |
Line 265: | Line 265: | ||
− | Here the NR stands for number of records. | + | Here the '''NR''' stands for number of records. |
− | + | Records are '''integers''', hence we have written''' %d'''. | |
− | Name and | + | '''Name''' and '''Stream''' are '''strings'''. So we have used '''%s'''. |
− | Here 25s will reserve 25 spaces for Name field. | + | Here '''25s''' will reserve 25 spaces for '''Name''' field. |
− | 15s will reserve for Stream field. | + | '''15s''' will reserve for '''Stream''' field. |
− | The minus sign is used to left justify the output. | + | The '''minus sign''' is used to left justify the output. |
− | |||
− | + | |- | |
+ | | style="border:1pt solid #000000;padding:0.097cm;"| Display Slide 8 | ||
+ | |style="border:1pt solid #000000;padding:0.176cm;"| This brings us to the end of this tutorial. | ||
− | + | ||
− | + | Let us move back to our slides. | |
− | + | Let us summarize. | |
In this tutorial we learnt | In this tutorial we learnt |
Latest revision as of 16:32, 22 March 2018
Title of script: The Awk Command
Author: Sachin Patil and Anirban
Keywords: Selection criteria, action, formatted printing, fields, Regular expressions, Variables
|
|
Display Slide 1 | Welcome to the spoken tutorial on the awk command. |
Display Slide 2
Learning Objective |
In this tutorial we will learn,
awk command. We will do this through some examples. |
Display Slide 3
System requirement |
To record this tutorial, I am using
Please note, GNU Bash version 4 or above is recommended to practice this tutorial. |
Display Slide 4
Introduction |
Let us start with an introduction to awk.
The awk command is a very powerful text manipulation tool. It is named after its authors, Aho, Weinberger and Kernighan. |
Continue Slide
|
It can perform several functions.
It operates at the field level of a record. So, it can easily access and edit the individual fields of the record. |
Let us see some examples.
For demonstration purpose, we use the awkdemo.txt file. Let us see the contents of awkdemo.txt file.
| |
Now open the terminal by pressing
CTRL + ALT and T keys simultaneosuly on your keyboard.
|
Now open the terminal by pressing CTRL + ALT and T keys simultaneosuly on your keyboard. |
type:
|
Let us see how to print using awk command.
Type: awk space (within single quote) (front slash) ‘/Pass (front slash)/(opening curly bracket) {print (closing curly bracket)} (after the quotes) space awkdemo.txt
|
Here Pass is the selection criterion.
| |
Type
"awk '/M[ei]*ra*/ {print}' awkdemo.txt" [enter] |
We can also use regular expressions in awk
|
We would type:
| |
"*" will give one or more occurrences of previous character.
| |
awk supports the extended regular expressions (ERE).
Which means we can match multiple patterns separated by a PIPE. | |
Type
"awk '/civil|electrical/ {print}' awkdemo" [enter] |
Now type:
|
Display slide 7
|
Let us go back to our slides.
|
Switch to the terminal
|
Note that each word is separated by PIPE in the file awkdemo.txt.
|
Type
“awk -F "|" '/civil|electrical/ {print $0}' awkdemo ” [enter]
|
Lets go back to the terminal.
Press Enter This print the entire line since we have used $0. |
Type
“awk -F"|" '/Pass/ {print $2, $3}' awkdemo” [enter] |
Notice that, names and stream of students are the second and third fields.
|
Say we only want to print two fields.
Only two fields are shown. | |
Though it gives the right result, the display is all jagged and unformatted.
| |
“awk -F"|" '/Pass/ {printf "%4d %-25s %-15s \n",
NR,$2,$3 }' awkdemo” [enter]
|
We can provide formatted output by using the C style printf statement.
awk space -F”|” space '/Pass/{printf “%4d %-25s %-15s \n”, NR,$2,$3 }' space awkdemo.txt
We see the difference.
|
Display Slide 8
|
This brings us to the end of this tutorial.
In this tutorial we learnt To print using awk Regular expression in awk To list the enteries for a paritcular stream To list only the second and the third fileds To display a formatted output
|
Display Slide 9 | As an assignment
Display roll no., stream and marks of Ankti Saraf
|
Display Slide 10
Acknowledgement Slide
|
Watch the video available at the link shown below
It summarises the Spoken Tutorial project If you do not have good bandwidth, you can download and watch it |
Display Slide 11
Spoken Tutorial Workshops
|
The Spoken Tutorial Project Team
Conducts workshops using spoken tutorials Gives certificates to those who pass an online test For more details, please write to contact@spoken-tutorial.org |
Display Slide 12
Acknowledgement
|
Spoken Tutorial Project is a part of the Talk to a Teacher project
It is supported by the National Mission on Education through ICT, MHRD, Government of India More information on this Mission is available at: http://spoken-tutorial.org\NMEICT-Intro |
No Last Slide for tutorials created at IITB
Display the previous slide only and narrate this line. |
The script has been contributed by Sachin Patil.
This is Ashwini Patil from IIT Bombay signning off. Thank you for joining. |