删除数组元素
如果你想移除元素从一个数组某个特定索引,使用awk删除语句。一旦你从一个数组删除一个元素,你不再能获得其值了。
语法:
delete arrayname[index];
下面的循环命令移除数组中所有元素。
for ( var in array )
delete array[var]
在GAWK中,你可以指定下面单个命令删除数组中所有元素。
delete array
另外,如下面的例子中,item[103]="" 不删除数据元素,它只是存储空值。
$ cat array-delete.awk
BEGIN {
item[101]="HD Camcorder";
item[102]="Refrigerator";
item[103]="MP3 Player";
item[104]="Tennis Racket";
item[105]="Laser Printer";
item[1001]="Tennis Ball";
item[55]="Laptop";
item["na"]="Not Available";
delete item[102];
item[103]="";
delete item[104];
delete item[1001];
delete item["na"];
for ( x in item )
print "index", x, "contains", item[x];
}
$ awk -f array-delete.awk
index 55 contains Laptop
index 101 contains HD Camcorder
index 103 contains
index 105 contains Laser Printer