Powiel możliwe:
How to sort an array in BASHJak znaleźć najwyższy numer w tablicy?
Mam liczby w tablicy 10 30 44 44 69 12 11...
. Jak wyświetlić najwyższą z tablicy?
echo $NUM //result 69
Powiel możliwe:
How to sort an array in BASHJak znaleźć najwyższy numer w tablicy?
Mam liczby w tablicy 10 30 44 44 69 12 11...
. Jak wyświetlić najwyższą z tablicy?
echo $NUM //result 69
Można użyć sort
się dowiedzieć.
#! /bin/bash
ar=(10 30 44 44 69 12 11)
IFS=$'\n'
echo "${ar[*]}" | sort -nr | head -n1
Alternatywnie, szukaj maksimum siebie:
max=${ar[0]}
for n in "${ar[@]}" ; do
((n > max)) && max=$n
done
echo $max
spróbuj tego:
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
wynik w 100
Oto ten sam problem, co w powyższej odpowiedzi - jest problem z max = 0 - co jeśli wszystkie argumenty są negatywne? .. Oto lepsze rozwiązanie - https://stackoverflow.com/a/40719447/2107205 – mato
http://stackoverflow.com/questions/7442417/how-to-sort-an-array-in-bash – paul
Cóżeś próbowałem do tej pory? Spróbuj postępować zgodnie z przykładem [rubber duck] (http://www.codinghorror.com/blog/2012/03/rubber-duck-problem-solving.html). – Pureferret