AWK 数组基础

awk 数组定义赋值

array[1]=abc;

arrray[2]=efg;

在命令行定义打印数组

[root@localhost  ]# awk 'BEGIN{array[1]="abc";array[2]="efg";for(key in array) print key,array[key]}'

1 abc

2 efg

[root@localhost ]#

[root@localhost ~]# echo qw> /home/a.log

[root@localhost ~]# awk '{array[1]="abc";array[2]="efg";}END{for(key in array) print key,array[key]}' /home/a.log##后跟任意文件才能输出结果

1 abc

2 efg

脚本打印数组

[root@localhost ~]# vim awk_sh.sh

#!/bin/awk

BEGIN{

array[1]="abc";

array[2]="efg";

for(key in array)

print key,array[key];

}

[root@localhost ~]# awk -f awk_sh.sh  ##  -f 执行脚本文件

1 abc

2 efg

BEGIN与END的作用是给程序赋予初始状态和程序结束后执行扫尾的工作;任何在BEGI 之后列出的操作({}内)awk开始扫描输入之前执行,END扫描全部的输入之前执行结束之后执行。通常使用BEIN来显示变量和初始化变量,使用END来输出最后的结果。

你可能感兴趣的:(AWK 数组基础)