cheetsheetz/awk.md

2.1 KiB

AWK Cheat Sheet

Table of Contents

  1. AWK Basics
  2. Patterns and Actions
  3. Variables
  4. Operators
  5. Built-in Variables
  6. Control Structures
  7. Functions
  8. Text Processing
  9. Regular Expressions
  10. Arrays
  11. User-Defined Functions
  12. Command Execution

AWK Basics

Print Lines

awk '{print}' filename

Print Specific Column

awk '{print $2}' filename

Filter with Condition

awk '$1 > 10 {print}' filename

Patterns and Actions

# Pattern with Action
pattern1 { action1 }
pattern2 { action2 }

Variables

# Assigning Variables
variable = value

# Accessing Variables
print variable

Operators

# Arithmetic Operators
+, -, *, /, %

# Relational Operators
==, !=, >, <, >=, <=

# Logical Operators
&&, ||

Built-in Variables

# NR: Record Number
NR > 1 {print "Line Number: " NR}

# NF: Number of Fields
{print "Number of Fields: " NF}

Control Structures

# if Statement
if (condition) {
    # Commands
}

# if-else Statement
if (condition) {
    # Commands for true condition
} else {
    # Commands for false condition
}

Functions

# Built-in Functions
{
    result = sqrt(9)
    print "Square Root: " result
}

Text Processing

Field Separator

# Change Field Separator
awk -F',' '{print $2}' filename

Output Formatting

# Formatting Output
awk '{printf "Name: %-10s Age: %d\n", $1, $2}' filename

Regular Expressions

# Match Pattern
awk '/pattern/ {print}' filename

Arrays

# Declare an Array
array[1] = "apple"
array[2] = "banana"

# Access Array Element
print array[1]

User-Defined Functions

# Define a Function
function my_function(parameter) {
    # Commands
}

# Call the Function
my_function(value)

Command Execution

# Execute Command
awk '{cmd = "echo " $1; system(cmd)}' filename