博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
总结下awk基本用法
阅读量:5365 次
发布时间:2019-06-15

本文共 1167 字,大约阅读时间需要 3 分钟。

命令格式:awk '{commands}  [{other commands}]'awk 'condition{commands}  [{other commands}]'  如:awk '$4=="gold"{print $0}' xxx.txt  ——  打印第四列为gold的行{$0 $1 $2 ...}: $0表示整行,$1表示第一列,$2表示第二列…… NR: number of record,{print $NR, $0}可以给行加上行号NF: number of fields,每个记录的列数(默认空格分割计数)打印第7行:  awk 'NR==7{print $0}' test.txt打印有10列的行:   awk 'NF==10{print $0}' test.txt打印最后一列:     awk '{print $NF}' xxx打印倒数第二列:    awk '{print $(NF-1)}' xxx{print $1, $2} 中的逗号表示使用默认输出分隔符连接1,2列并打印。(默认是空格){print $1$2} 和 {print $1 $2} 等效,第1,2列直接连接,中间没有分隔符。(即输出语句的空格表示直接连接)定义变量:awk 'BEGIN{在这里定义} {后续命令}'内建变量:FS:输入分隔符OFS:输出分隔符 (O,不是零)自定义输入分隔符使用逗号:awk 'BEGIN{FS=","} {print $1, $2}' test.txt自定义输出分隔符使用逗号:awk 'BEGIN{FS=","; OFS=","} {print $1, $2}'

算术运算、

字符串和数字自动转换、

字符串和数字运算时自动parse开头的数字

使用正则

awk '/正则式/{命令}' xxxawk '/abc/{print $0}' xxx   打印包含abc的行正则式简介:1. /abc/ 包含abc2. /^abc$/ 匹配开头和结束3.  . 任意字符或空格4. 转义 \. \? \/5. 中括号    [xyz] 匹配xyz中的任意一个字符    [a-z] 匹配a-z范围内任意字符    [a-zA-Z]    [^a-z] ^放在中括号中表示不匹配,如 /a[^a-z]c/ 可以匹配 aBc,不能匹配abc6. 数量:    * 0次或若干次    + 1次或若干次    ? 0次或1次    {a,b} 指定出现a~b次数,如{3}表示出现3次,{4,9} 表示可以出现4,5,6,7,8,9次7. () 匹配的单位,如 /(ab){3}/ 要求包含ababab

转载于:https://www.cnblogs.com/dylanchu/p/11337562.html

你可能感兴趣的文章
photoshop图层样式初识1
查看>>
【.NET】使用HtmlAgilityPack抓取网页数据
查看>>
typedef的使用
查看>>
基于位置的本地商铺个性化推荐
查看>>
职场上一个人情商高的十种表现
查看>>
【底层原理】深入理解Cache (下)
查看>>
Elasticsearch安装中文分词插件IK
查看>>
进阶4:常见函数-单行函数
查看>>
简述企业信息化与企业架构关系
查看>>
npoi List 泛型导出
查看>>
ASP.NET自定义控件组件开发 第一章 第三篇 第一章的完结篇
查看>>
T-sql表表达式
查看>>
async await 原理吸收
查看>>
leetcode算法:Next Greater Element I
查看>>
ionic 调用百度地图API,并定位当前位置示例
查看>>
关于MFC程序运行阶段出现试图执行的操作不受支持
查看>>
流程图怎么画?分享绘制流程图简单方法
查看>>
squid的处理request和reply的流程
查看>>
硬件_陀螺仪
查看>>
C#读取MySql表字段出现System.Byte[]问题
查看>>