如何防止 awk 对数组进行排序?

How to prevent awk from sorting the array?

我正在尝试从 data 文本文件中提取这些行:

first
second
third
fourth
fifth
sixth

基于预先保存在 nums 文本文件中的行号:

2
6
3

我最终得到了以下 解决方案,但它给了我根据行号而不是根据 nums 文件中的顺序排序的行。

$ awk  'NR==FNR{lines[[=12=]];next } FNR in lines' nums data
second
third
sixth

但是我想要实现的是下面的输出:

second
sixth
third

那么,是否有 awk 到 prevent/disable 对数组进行排序的选项?

以相反的方式处理文件:

awk 'NR == FNR { line[NR] = [=10=]; next } { print line[] }' data nums