awk的一些参数使用

以前在也有使用过AWK,不过停留在print的基础上.

最近有要处理些数据.

就用到了动态数组, printf函数.

不过现在需要把两个文件像数据库一样连接起来.第一个想法是join命令.但是既然用了AWK顺便看下AWK能不能处理这种情况.

第一感觉是awk一次只能处理同样格式的文件.

网上搜了一下:发现有两个方案来处理两个文件的.

1. 使用NR和FNR比较. 这个方案我的理解是可以处理两类不同格式的文件.

2. 使用ARGIND参数. 这个方案可以区分多个不同格式的文件.

处理多个文件时还可以利用FILENAME参数,来识别文件名.

AWK的工具箱:

1.正则匹配

2.动态数组

3.内置参数

4.使用--re-interval命令行参数启用支持正则表达式的[0-9]{3,5}的模式.

6.原来以为prin不能换行,现在发现实际是支持换行的. 原来用printf把20多个参数写在一行上, 格式字符都快把眼看瞎了.

7. awk 自定义函数时,函数内部的变量默认是全局的,若要定义局部变量,需要在参数列表中声明参数, 局部变量参数和函数参数之间用几个空格分割开.

8. print也可以使用重定向符号。所以可以同时输出几个文件。

9. awk 'NR==7,NR==15' file: 输出7-15行,而不是输出第7行和第15行

待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值