Skip to content

Latest commit

 

History

History
28 lines (15 loc) · 1 KB

unix-gawk-awk-basics.md

File metadata and controls

28 lines (15 loc) · 1 KB

Title: Unix: Basics of Gawk Tags: unix,unix-awk,unix-gawk

The basic syntax of this command is usually:

	gawk '<gawk command>' filename

Within the gawk command, the format is:

	BEGIN { <operations> } /<pattern match>/ { <operations> } /<another pattern>/ { <another op> } END { <operations> }

The BEGIN and END parts are optional. As is the pattern match.

Within the main operations block, you can use the NF variable to find many fields are on this line.

This gawk program will only print non-blank lines, since blank lines have a NF of 0:

	gawk '{ if(NF!=0) print $0 }' filename

The 'print $0' will print the whole line. The $1 will print the first field and so on. Fields are separated by spaces and/or tabs.

Pattern matching will allow you to only print lines with, in this case, the word 'hello' in them:

	gawk '/hello/ { print $0 }' filename

If you place a '~' before the pattern match, it will be inverted.

There are many other things gawk can do, including variables, addition of fields and many more.