awk命令 #

一、基本用法 #

bash
#!/bin/bash

# 打印列
awk '{print $1}' file.txt

# 打印多列
awk '{print $1, $2}' file.txt

# 指定分隔符
awk -F',' '{print $1}' file.csv

# 使用脚本文件
awk -f script.awk file.txt

二、内置变量 #

变量 说明
$0 整行
$1-$n 第n列
NF 列数
NR 行号
FS 字段分隔符
RS 行分隔符
OFS 输出字段分隔符

三、条件与循环 #

bash
#!/bin/bash

# 条件判断
awk '$3 > 100 {print $1}' file.txt

# if语句
awk '{if($3>100) print $1}' file.txt

# 循环
awk '{for(i=1;i<=NF;i++) print $i}' file.txt

四、实战示例 #

bash
#!/bin/bash

# 统计
awk '{sum+=$1} END {print sum}' file.txt

# 分组统计
awk '{count[$1]++} END {for(k in count) print k, count[k]}' file.txt

# 格式化输出
awk '{printf "%-10s %5d\n", $1, $2}' file.txt

# 过滤
awk 'NR>1 && $3>100' file.txt

下一步 #

你已经掌握了awk命令,接下来让我们学习 cut命令

最后更新:2026-03-27