在AWK的END块中创建内部变量数组并打印结果的解决方法如下:
awk '
BEGIN {
# 初始化内部变量数组
index = 1
}
{
# 处理每一行的逻辑
# 将需要的数据存入内部变量数组
array[index] = $0
index++
}
END {
# 在END块中打印内部变量数组的结果
for (i = 1; i < index; i++) {
print array[i]
}
}' file.txt
上述代码中,我们使用了一个名为array的内部变量数组来存储每行的数据。在BEGIN块中,我们初始化了该数组,并定义了一个名为index的计数器,用于记录数组中的元素个数。
在处理每一行的逻辑中,我们将每行的内容存入array数组中,并递增index计数器。
最后,在END块中,我们使用一个循环遍历array数组,并打印出所有的元素。
你可以将上述代码保存为一个脚本文件,例如script.awk,然后在终端中运行awk -f script.awk file.txt来执行该脚本。其中file.txt是你要处理的文件名。