awk基本用法
简述:
awk用于文本处理
常用参数:
-F 指定分隔符
-v 指定变量
$NF 表示最后一个字段
NR 表示第几行
&& 与
|| 或
$0 整行
OFS 输出字段分隔符
1...N 第一个到第N个字段
例子:
1、输出1.txt文件的第一列,默认按空格分隔
awk -F {print $1} 1.txt
2、输出1.txt文件的第一列和第二列,按,分隔
awk -F, {print $1,$2} 1.txt
3、输出1.txt文件的最后一行的最后一个字段,按:分隔
tail -1 1.txt | awk -F ":" '{print $NF}'
4、输出第十行的内容
awk NF==10'{print $0}' 1.txt
5、给a赋值1,让a与第一个字段相加,然后输出第一行
awk -v "a=1" '{a+=$1;print $1}' 1.txt | head -1
6、按:分隔,输出1.txt文件的第一、第二列,以 - 连接
awk -F ":" '{OFS=-;print $1,$2}' 1.txt
优先级参数:
BEGIN 最高优先级
END 最低优先级
例子:
1、输出hello
awk 'END{print "hello"}'
2、输出a、b
awk 'BEGIN{a="hello",b="world";print a,b}'
3、将1.txt文件的第一列相加
awk -v "a=0" 'a+=$1END{print a}' 1.txt
判断控制流
if 判断
while 循环
for 循环
do...while 循环
break 提出循环
例子:
1、判断1.txt中如果$1大于10,输出$1,否则输出$2
awk ‘{if($1>10)print $1;else print $2}’ 1.txt
2、循环输出1~10
awk 'BEGIN{i=1;while(i<11){print i;i++}}'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探