给定一个单列数字文件,调用它f
,下面的 awk 代码将返回最大值
cat f | awk ' BEGIN {max = -inf}
{if ($1>max) max=$1}
END { print max }
'
Run Code Online (Sandbox Code Playgroud)
获得最小值的相同方法不会产生任何结果
cat f | awk '
BEGIN {min = inf}
{if ($1<min) min=$1}
END {print min}
'
Run Code Online (Sandbox Code Playgroud)
但是,如果不是使用inf
,而是从 开始min = [some large number]
,如果数字足够大,取决于文件中的内容,则修改后的代码有效。
为什么不起作用inf
,是否有某种方法可以使min
案例像max
案例一样工作,而不必知道文件中的内容?