awk用法详解

发布时间 2023-03-29 16:22:50作者: 香菜哥哥

awk是一种文本处理工具,它可以对文件进行分析、处理和格式化。它的功能类似于sed和grep,但是awk更加强大灵活。 awk命令的基本语法如下:

awk [选项参数] 'pattern {action}' file

其中,pattern是一个用来匹配文本的模式,可以是正则表达式或者字符串;action是一系列要执行的命令,用花括号包围;file是要处理的文件。 在awk命令中,可以使用以下选项参数:

  • -F:指定输入文件的分隔符,默认为制表符(tab)或空格。
  • -v:定义一个变量并赋值。
  • -f:从指定文件中读取awk脚本。 下面是awk常用的一些命令:

  1.打印指定列

awk '{print $1,$3}' file

  该命令会打印文件file的第1列和第3列。

   2. 根据条件打印行

awk '$1 > 10 {print}' file

  该命令会打印文件file中第1列大于10的行。

   3. 使用分隔符处理文件

awk -F ',' '{print $1,$3}' file

  该命令会使用逗号作为分隔符,打印文件file的第1列和第3列。

  4. 使用变量

awk -v var=10 '{print $1+var}' file

  该命令会定义一个变量var,并赋值为10,然后打印文件file的第1列加上变量var的值。

  5. 统计行数、列数和字符数

awk 'END{print NR,NF}' file

  该命令会打印文件file的行数和列数。

  6. 计算平均值

awk '{sum+=$1} END {print sum/NR}' file

  该命令会计算文件file的第1列的平均值。

  7. 模式匹配

awk '/pattern/ {print}' file

  该命令会打印文件file中包含pattern的行。

 

以上是awk的一些基本用法,实际上awk还有很多高级用法和函数,可以根据具体需求进行学习和使用。