【发布时间】:2020-06-28 22:35:21
【问题描述】:
我有以下数组:
echo $array
0.3 0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.3 0.3 0.2 0.4 0.4 0.4 0.4 0.5 0.5 0.4 0.2
我已经编写了一个代码来对值进行排序并获得索引号:
echo $array | tr -s ' ' '\n' | awk '{print($0" "NR)}' | sort -g -k1,1
0.2 11
0.2 19
0.3 1
0.3 10
0.3 2
0.3 9
0.4 12
0.4 13
0.4 14
0.4 15
0.4 18
0.4 3
0.4 4
0.4 5
0.4 6
0.4 7
0.4 8
0.5 16
0.5 17
我很难仅提取第一列中具有最低值的行(即,总体而言,数组中的最低值)。例如,上述示例所需的最终产品将是:
0.2 11
0.2 19
它应该能够处理一个和多个最低值索引的实例。如果不需要,代码不需要包含任何类型的 awk、sort、sed 或任何命令 - 任何东西都可以工作(这就是我在完成最终任务时所获得的)。
【问题讨论】:
-
顺便说一句。你的数组只包含一个长元素或者是一个字符串。