如果我希望数字最接近1到10之间的7,那么我想要的预期结果是:
7, 6, 8, 5, 9, 4, 10, 3, 2, 1
我环顾四周,找不到真正的答案,这是否可行?
几乎要尝试采用具有一系列数字的数组,并根据目标数字对它们进行排序,目标数字最接近顶部,最底部朝底部。
在换行符上打印数字
计算目标数字与每行数字之间的差的绝对值
使用该计算值排序
删除该计算值
格式化输出
seq 10 |
awk -vN=7 '{print abs($1-N),$1} function abs(x) { return x < 0 ? -x : x; }' |
sort -n |
cut -d' ' -f2 |
paste -sd,
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句