06linux三剑客之awk

快捷手册awk

命令模版

awk '条件1 {动作 1} 条件 2 {动作 2} …' 文件名

举例:awk -F ':' '{ print $1 }' demo.txt

条件类型

变量

函数

举例:awk -F ':' '{ print toupper($1) }' demo.txt

条件

awk允许指定输出条件,只输出符合条件的行。

awk -F ':' '/usr/ {print $1}' demo.txt  # print命令前面是一个正则表达式,只输出包含usr的行。  
awk -F ':' 'NR % 2 == 1 {print $1}' demo.txt # 输出奇数行
awk -F ':' 'NR >3 {print $1}' demo.txt # 输出第三行以后的行
 awk -F ':' '$1 == "root" || $1 == "bin" {print $1}' demo.txt # 输出第一个字段等于指定值的行。

if 语句

awk -F ':' '{if ($1 > "m") print $1}' demo.txt # 输出第一个字段的第一个字符大于m的行。
awk -F ':' '{if ($1 > "m") print $1; else print "---"}' demo.txt # if else 结构

参考

Linux awk用法:https://blog.51cto.com/13438667/2096206

Linux awk用法:https://blog.51cto.com/13438667/2096206:c.biancheng.net/view/992.html

awk 入门教程:www.ruanyifeng.com/blog/2018/11/awk.html

Linux awk 命令:https://www.runoob.com/linux/linux-comm-awk.html

Last updated