Pattern scanning and processing language for structured text.
awk processes text line-by-line, splitting into fields and applying rules and actions. It is extremely powerful for filtering, transforming, and reporting on structured data.
# Print first column
awk '{print $1}' file.txt
# Print lines matching pattern
awk '/error/ {print}' logfile# Sum a column
awk '{sum += $2} END {print sum}' data.txt
# Print specific columns
awk '{print $1, $3}' file.txt
# Use custom delimiter
awk -F ':' '{print $1}' /etc/passwd
# Conditional filtering
awk '$3 > 100 {print $0}' data.txt