shell脚本基础(三 :awk )

目录

1 AWK

1.1awk工作原理

1.2 基础用法

1.2.1 awk -f

1.3 $0   当前处理的行的整行内容

2.2NR 处理指定行内容

2.2.1 使用数字处理行内容

2.2.2 使用字符串处理行内容

2.2.3打印行号 ​编辑

2.3 $n 当前处理行的第n个字段

2.4 FS(-F)列分割符,指定每行文本的字段分隔符


1 AWK

1.1awk工作原理

  • 逐行读取文本,默认以空格或tab键为分隔符进行分隔,将分隔所得的各个字段保存到内建变量中,并按模式或者条件执行编辑命令。
  • awk倾向于将一行分成多个"字段"然后再进行处理。
  • awk信息的读入也是逐行读取的,执行结果可以通过print的功能将字段数据打印显示。
  • 使用awk命令的过程中,可以使用逻辑操作符"&&"表示"与"、"|"表示"或"、"!"表示"非",还可以进行简单的数学运算,如+、-、*、/、%、^分别表示加、减、乘、除、取余和乘方。

前面提到 sed 命令常用于一整行的处理,而 awk 比较倾向于将一行分成多个“字段”然后再进行处理,且默认情况下字段的分隔符为空格或 tab 键。awk 执行结果可以通过 print 的功能将字段数据打印显示。

#常见选项
-F “分隔符” 指明输入时用到的字段分隔符,默认的分隔符是若干个连续空白符
-v(小v) var=value 变量赋值

awk   [选项]   '模式条件{操作}' 文件1 文件2....
 

1.2 基础用法

print动作

#字符串需要添加双引号,单引号已被使用

shell脚本基础(三 :awk )_第1张图片 shell脚本基础(三 :awk )_第2张图片

 #打印root 多少行=passwd里的行数

shell脚本基础(三 :awk )_第3张图片

#分区利用率

shell脚本基础(三 :awk )_第4张图片

#用冒号分隔开

shell脚本基础(三 :awk )_第5张图片

#取ip地址shell脚本基础(三 :awk )_第6张图片

1.2.1 awk -f

 -F “分隔符” 指明输入时用到的字段分隔符,默认的分隔符是若干个连续空白符

#  $0代表全部元素

shell脚本基础(三 :awk )_第7张图片

# $1代表第一列

shell脚本基础(三 :awk )_第8张图片

 
#  $1,$3代表第一第三列

shell脚本基础(三 :awk )_第9张图片

#  已root为开头的行shell脚本基础(三 :awk )_第10张图片

  
#  统计当前已/bin/bash结尾的行

shell脚本基础(三 :awk )_第11张图片

1.3 $0   当前处理的行的整行内容

shell脚本基础(三 :awk )_第12张图片

2.2NR 处理指定行内容

2.2.1 使用数字处理行内容

shell脚本基础(三 :awk )_第13张图片

 shell脚本基础(三 :awk )_第14张图片

shell脚本基础(三 :awk )_第15张图片

2.2.2 使用字符串处理行内容

shell脚本基础(三 :awk )_第16张图片

2.2.3打印行号 shell脚本基础(三 :awk )_第17张图片

2.3 $n 当前处理行的第n个字段

shell脚本基础(三 :awk )_第18张图片

2.4 FS(-F)列分割符,指定每行文本的字段分隔符

shell脚本基础(三 :awk )_第19张图片

你可能感兴趣的:(mysql,数据库)