我正在尝试将 split() 与 awk 一起使用。我使用 split() 将 $7 的内容拆分为一个数组,但不确定如何从相反的顺序开始打印内容。字段 $7 的长度可变,但我需要的文本是数组末尾的 4、5、6。
awk 'BEGIN { FS = "=" } ; { print $4,"\n", $5"="$6, split($7,a," "); print a[-3] ,"\n\n\n" }' test.txt
答案1
这可能就是您想要的:
n=split($7,a," "); print a[n-3], a[n-4], a[n-5]
如果没有,则编辑您的问题以提供简洁、可测试的示例输入和预期输出来演示您的问题。
请参阅GNU Awk 文档以获得更多见解。