有人可以帮助我在bash中使用脚本/ oneliner,它可以从文件中找到最接近的给定值..?例如:找到距文件bash中给定值最近的值
我在文件中有下列值:
SJ ENG MGR DE CJ RU CHI JPN
1 2 3 10 20 50 100 900
我需要找到最接近的值,例如“90”。结果应该是100 +这个值是100像这样的值。
我remaked我输入从线列和应用这个代码
awk -v c=1 -v t=35 'NR==1{d=$c-t;d=d<0?-d:d;v=$c;next}{m=$c-t;m=m<0?-m:m}m<d{d=m;v=$c}END{print v}'
它的工作,但我不能重拍这行代码到符合运行的代码。它的工作与列,但不与线,我需要像我的例子中的工作解决方案。
谢谢。
//编辑
好了,所以我还在坚持在这里,即时通讯与该输入
SJ ENG MGR DE CJ RU CHI JPN
9,50 3,10 3,12 3,70 3,50 3,80 3,75 3,90
尝试它和Im寻找最接近的号码为 “5,50”,其还发现3, 10为最接近的,这是不正确的,应该是3,90。我现在使用正确的语言环境。
你有什么已经尝试过?发生了什么? – 2015-03-13 13:59:20
我重建了我的输入从行到列并应用此代码'awk -vc = 1 -vt = 35'NR == 1 {d = $ ct; d = d <0?-d:d; v = $ c;下一步} {m = $ ct; m = m <0?-m:m} m
Heatv
2015-03-13 14:03:22
请把你的问题与适当的格式,请:) :) – 2015-03-13 14:03:43