【发布时间】:2021-08-13 00:02:06
【问题描述】:
function greater {
grep -Eo '[0-9]*' $1 | sort -rn | head -n 1
}
function lesser {
grep -Eo '\-[0-9]*' $1 | sort -n | head -n 1
}
我已经创建了这些函数,但是正在打印负数:第一个函数忽略了 - 符号,所以它显示了最大的数字,但它应该打印最大的正数。关于如何解决这个问题的任何想法?
示例输入:
-100 -90 95
10 -20
500 400 300 200 600
示例输出:
Greater: 600
Lesser: -100
(较小的工作正常。)
【问题讨论】:
-
grep -Eo -- '-?[0-9]*' $1 | sort -n | tail -n 1和grep -Eo -- '-?[0-9]*' $1 | sort -n | head -n 1?