awk
来源:互联网 发布:优化关键词技巧 编辑:程序博客网 时间:2024/05/18 03:26
awk使用方法
awk '{pattern + action}' {filenames}
其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号({})不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。 pattern就是要表示的正则表达式,用斜杠括起来。awk支持所有的正则表达式元字符。
awk有2个特殊的段,BEGIN,END,分别用于主循环的前后。
调用awk的3种方式
awk '{pattern + action}' {filenames}awk -f awkfile filenamesfile.awk filenames
记录和域
awk的一行文本称作一个记录。awk通过分隔符,把一行文本分成多个域。域从1开始编号,$1,$2分别表示第一,第二个域,$0表示所有域。
$后面可以跟变量或者表达式,例如$(a+b)
awk可以通过-F指定分隔符,或者在BEGIN段内使用FS=char指定分隔符。
关系和布尔表达式
表达式
awk可以定义变量,awk变量区分大小写。awk变量无需定义类型,每个变量有2种类型,数值和字符串值,根据上下文决定使用什么类型。默认数值为0,字符串值为空。
x=1 #x=1z="very" "good" #z=very good
awk运算符
系统变量
格式化输出
printf (格式控制符,参数)
向脚本传递参数
awk脚本内的变量,可以在命令中传递,使用-v
scr.awk -v paramname=paramvalue files
条件语句和循环语句
awk条件语句与循环语句与C语言一样。
if (expression) {statements}[else{statements}]#[]表示可选。if允许嵌套。语句后可以跟;表示结束。while(expression){statements}do{statements} while(expression)for(var in list){}for(;;){}
数组
数组格式与C一样,不过不用定义类型与大小。
1、关联数组
关联数组即数组下标可以是表达式,数值,字符串。
字符串与数值是有差异的。array[09]与array[9]不是一个地址。
阅读全文
0 0
- awk
- awk
- AWK
- awk
- AWK
- awk
- awk
- AWK
- awk
- awk
- AWK
- awk
- awk
- awk
- awk
- awk
- awk
- awk
- Miller_Rabin 算法进行素数测试 pollard_rho 算法进行质因数分解 poj1811Prim Test
- 根文件的制作与挂接
- AWS自动化合规slide
- 弱类型、强类型、动态类型、静态类型语言
- CentOS下使用FTP协议连接远程主机
- awk
- 小小的void蕴藏着很丰富的设计哲学
- 优先队列
- 棋盘问题
- WebRTC 音频处理流程(一)
- awk内置函数
- tcp_server
- 多进程多线程服务器编写
- Hibernate学习之---深入理解持久化对象