AWK 是一种处理文本文件的语言,是一个强大的文本分析工具
基本语法
awk [options] '[pattern] {action}' file
示例
1、使用命令行
cat demo.txt Hello world! $ awk '{print}' hello.txt Hello world! $ awk -F " " '{print $1}' hello.txt Hello
说明:
-F选项 指定空格" "作为字段分隔符
$1 分隔后列表索引,从1开始,0是整行
注意'[pattern] {action}'
是单引号
2、使用脚本文件
#运行前 BEGIN { # 空格分隔 FS=" " } #运行中 { print $1 }
$ awk -f hello.awk hello.txt Hello
3、多行文件处理示例
demo.txt
name color amount apple red 4 banana yellow 6 strawberry red 3 grape purple 10 apple green 8 plum purple 2 kiwi brown 4 potato brown 9 pineapple yellow 5
# 第三列的值等于2 $ awk -F " " '$3==2 {print $0}' demo.txt plum purple 2 # 第一列的值以p开头 (不匹配 !~) $ awk -F " " '$1 ~ /^p/ {print $0}' demo.txt plum purple 2 potato brown 9 pineapple yellow 5