POSIX Awk 排序数组

POSIX Awk 排序数组

我想用 POSIX Awk 对数组进行排序,但是我发现:

  • asort()
  • asorti()
  • PROCINFO["sorted_in"]

都是 GNU 扩展。不使用 GNU Awk 可以完成此操作吗?

答案1

这是一个例子:

function arr_sort(ary,   x, y, z) {
  for (x in arr) {
    y = arr[x]
    z = x - 1
    while (z && arr[z] > y) {
      arr[z + 1] = arr[z]
      z--
    }
    arr[z + 1] = y
  }
}

来源

相关内容