linux-awk

awk: 

pattern -directed scanning and processing language

模式导向的扫描和处理语言

awk属于数据驱动语言

动作:告诉awk当发现这些数据时将要做的事情

基本用法 - 字段

单/多字段:

awk '{print $0}' practice.txt  #打印practice.txt文件中的所有字段
awk '{print $1}' practice.txt #打印practice.txt文件中的第1列, 以空格来分割
awk '{print $3}' practice.txt #打印practice.txt文件中的第3列, 以空格来分割
 
默认分隔符:空格

awk -F "" '{print $1}' practice.txt   #默认的分隔符是空格

指定分隔符

awk -F ":" '{print $1}' practice.txt  #分隔符改成冒号

多个分隔符
 
 
模式匹配
awk '/[1-3]/{print $2}' practice.txt  #匹配开头数字在1-3之间的,打印第2列

awk '/[-3]/{print $2}/[4-9]/{print $1,$3}' practice.txt  #匹配开头数字在1-3之间的,打印第2列, 加上匹配开头数字在4-9之间的,打印第1和3列

原文地址:https://www.cnblogs.com/liulilitoday/p/14340476.html