千家信息网

Linux 文本处理利器--Awk常用命令

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,简介:在 Linux/UNIX 系统中,awk 是一个功能强大的编辑工具,逐行读取输入文本,并根据指定的匹配模式进行查找,对符合条件的内容进行格式化输出或者过滤处理,可以在无交互的情况下实现相当复杂的
千家信息网最后更新 2026年10月31日Linux 文本处理利器--Awk常用命令

简介:

在 Linux/UNIX 系统中,awk 是一个功能强大的编辑工具,逐行读取输入文本,并根据指定的匹配模式进行查找,对符合条件的内容进行格式化输出或者过滤处理,可以在无交互的情况下实现相当复杂的文本操作,被广泛应用于 Shell 脚本,完成各种自动化配置任务。

工作原理

逐行读取文本,默认以空格为分隔符进行分隔,将分隔所得的各个字段保存到内建变量中,并按模式或者条件执行编辑命令

常见用法:

单引号加上大括号"{}"用于设置对数据进行的处理动作。awk 可以直接处理目标文件,也可以通过"-f"读取脚本对目标文件进行处理。
awk 将文本文件中的一行视为一个记录,而将一行中的某一部分(列)作为记录中的一个字(域)。为了操作这些不同的字段,awk 借用 shell 中类似于位置变量的方法, 用$1、$2、$3…顺序地表示行(记录)中的不同字段。另外 awk 用$0 表示整个行(记录)。不同的字段之间是通过指定的字符分隔。awk 默认的分隔符是空格。awk 允许在命令行中用"-F 分隔符"的形式来指定分隔符。

命令格式

awk [选项] '模式或条件 {编辑指令}' 文件1 文件2
awk -f 脚本文件 文件1 文件2

特殊的内建变量

FS:指定每行文本的字段分隔符,默认为空格或制表位(tab键);
NF:当前处理的行的字段个数;
NR:当前处理的行的行号(序数);
$0:当前处理的行的整行内容;
$n:当前处理行的第 n 个字段(第 n 列);
FILENAME:被处理的文件名;
RS:数据记录分隔,默认为\n,即每行为一条记录;

关系运算符号:

只有当条件为真,才执行指定的动作。
大于(>);小于(<);大于等于(>=);小于等于(<=);
等于(==)、不等于(!=);
&&(与)、||(或)、!(非);
加(+)、减(-)、乘(*)、除(/)、取余(%)、乘方(^);

示例如下:

打印文本内容

awk '{print $1"---"$2}' aa.txt #在第一和第二字段之间插入--符号

awk '{print$0}' aa.txt #输出所有行内容

awk '/^6/{print}' aa.txt #输出以6开头的行

awk '/^(6|8)/{print}' aa.txt # #输出以6或8开头的行

awk '/^(6)/ && $3 > 70 {print}' aa.txt #输出以6开头和第三字段大于70的行

awk '/^(6)/ && $3 == 55 {print}' aa.txt #输出以6开头和第三字段等于60的行

awk 'NR==1,NR==3{print}' aa.txt #输出第1至第3行内容
等于awk '(NR>=1)&&(NR<=3){print}' aa.txt

awk 'NR==1;NR==3{print}' aa.txt #输出第1行、第3行内容
等于awk 'NR==1 || NR==3{print}' aa.txt

awk '/^root/{print}' /etc/passwd #输出以root开头的行

按字段输出文本

awk '{print $1}' aa.txt #输出第1字段内容

awk '{print$1,$3}' aa.txt #输出每行中的第1、3字段

awk -F ' ' '{print $2}' aa.txt #以空格分割,输出第二字段

字段 输出 处理 文件 文本 内容 分隔符 开头 条件 空格 命令 不同 变量 模式 脚本 一行 之间 动作 数据 格式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 耶加雪菲 互联网高科技 互联网新科技 互联网科技公司简介 互联网是第几次科技革命的成果 互联网科技工作委员会副主任毛军 互联网金融监管科技数据 狮子座互联网科技 西安互联网科技公司 盛创互联网科技有限公司 山东吉时兔互联网科技有限公司 华中科技有哪些互联网大佬 深圳市运趣互联网科技有限公司 米聚互联网科技南京有限公司排面 链环科技传统企业怎么转型互联网 健康食品互联网创新科技园项目 佛山市拉法互联网科技有限公司 南通创西澳互联网科技有限公司 互联网科技对化妆品行业 武汉亿视互联网科技有限公司 互联网和科技技术 互联网核心科技是什么 深圳科技互联网 青岛互联网科技公司 有马互联网科技 荆州市昕露互联网络科技有限公司 移动互联网年度科技创新 华中科技大学互联网的牛人 2021世界互联网领先科技成果发布 北京互联网科技类企业分布
0