26

重複の可能性:
BASH で配列をソートする方法

配列に数字があります10 30 44 44 69 12 11...。配列から最高のものを表示するには?

echo $NUM //result 69
4

2 に答える 2

55

を使っsortて調べることができます。

#! /bin/bash
ar=(10 30 44 44 69 12 11)
IFS=$'\n'
echo "${ar[*]}" | sort -nr | head -n1

または、自分で最大値を検索します。

max=${ar[0]}
for n in "${ar[@]}" ; do
    ((n > max)) && max=$n
done
echo $max
于 2012-10-05T10:28:43.157 に答える
4

これを試して:

a=(10 30 44 44 69 12 11 100)

max=0
for v in ${a[@]}; do
    if (( $v > $max )); then max=$v; fi; 
done
echo $max

結果は100

于 2012-10-05T10:28:20.160 に答える