Chinaunix
标题:
求大佬带我飞,想用shell 做个取绝对值最大的脚本
[打印本页]
作者:
春风十里跑得快
时间:
2018-11-06 16:29
标题:
求大佬带我飞,想用shell 做个取绝对值最大的脚本
我有几个数据,想让它们跟某一个特定的数值进行差值计算,然后返回绝对值最大的那个。
比如说有
123
456
111
跟100差值计算
返回456
不知道怎么写 希望大佬带带我!
作者:
wh7211
时间:
2018-11-06 17:23
回复
1#
春风十里跑得快
<<<awk4.0+
cat 1
123
456
111
awk -va=100 '{b[NR]=a>$1?a-$1:$1-a;c[NR]=$1}END{asorti(b,d,"@val_num_desc");print c[d[1]]}' 1
456
复制代码
作者:
春风十里跑得快
时间:
2018-11-07 09:46
回复
2#
wh7211
那如果是数组呢,您这个我都要去研究一下。shell才入门是真的难
作者:
wh7211
时间:
2018-11-07 11:36
回复
3#
春风十里跑得快
b,c,d都是数组
作者:
vagrant_1220
时间:
2018-11-07 18:16
awk 'function abs(v) {return v < 0 ? -v : v} BEGIN{a=100;t=0;out=0}{c=abs(a-$1);if(c>t) {t=c;out=$0}}END{print out}' file
456
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2