linux_wiki:awk

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
linux_wiki:awk [2016/03/16 14:03]
billdozor [Print Line Before Match]
linux_wiki:awk [2019/05/25 23:50] (current)
Line 6: Line 6:
 Gawk is the GNU Project's implementation of the AWK programming language. Gawk is the GNU Project's implementation of the AWK programming language.
  
-I typically stick to using gawk and in most cases, awk is a symlink to gawk+In most cases, awk is a symlink to gawk.
-This page will contain useful gawk commands as I run into them.+
  
 **Checklist** **Checklist**
-  * DistrosAll +  * Distro(s)Any 
-  * gawk installed+  * Software: awk/gawk installed 
 + 
 +---- 
 + 
 +====== General Awk Variables ====== 
 + 
 +  * -F":" => Set the field seperator to colon (:), instead of spaces (default). 
 +    * This can be set to any character 
 +  * $0 => The entire line (excluding new line at the end) 
 +  * $1 - $number => The fields 
 +  * NF => Number of fields on the current line 
 +  * NR => Current line number
  
 ---- ----
Line 38: Line 48:
 true true
 </code> </code>
 +
 +----
 +
 +===== Print Line After Match =====
 +
 +Search for a regex string and print the line AFTER the match.
 +
 +<code bash>
 +awk '/mystring/ { getline; print }'
 +</code>
 +  * mystring => regex string to search for
 +  * getline => set the line $0 to the next line
 +  * print => print the line
  
 ---- ----
Line 72: Line 95:
   * If the current line matches the regular expression "False" ("/False/"), then   * If the current line matches the regular expression "False" ("/False/"), then
     * Print the value of x ("{ print x }").     * Print the value of x ("{ print x }").
-  * Next, store the current line in the variable "x" ("{ x=$0 }")+  * Next, store the current line in the variable "x" ("{ x=$0 }")  (Always do this; Does not matter if it matches)
     * This has the effect of making the previous line available when evaluating the next line.     * This has the effect of making the previous line available when evaluating the next line.
 +      * Note: This will not work if the very first line matches the pattern, as x will not contain any lines yet.
  
 ---- ----
  
  • linux_wiki/awk.1458151394.txt.gz
  • Last modified: 2019/05/25 23:50
  • (external edit)