Strona 1 z 1

Porównywanie dat i wybranie jednej - bash

: 30 marca 2009, 19:34
autor: R_Przemek
Witam.

Mam skrypt, który wypluwa mi jakieś tam daty w formacie ,,rrrr-mm-dd'', poniżej wynik jego działania:

Kod: Zaznacz cały

2009-03-19 2009-03-20 2009-03-21 2009-03-22 2009-03-23 2009-03-24 2009-03-25 2009-03-26 2009-03-27 2009-03-28 2009-03-29 2009-03-30
I teraz zakładając, że daty te pobieram ze zmiennej "$dat" chciałbym aby nie wyświetlały się one wszystkie, tylko jedna najstarsza.

: 30 marca 2009, 21:39
autor: Inquistor
man sort

Kod: Zaznacz cały

echo "2009-03-19 2009-03-20 2009-03-21 2009-03-22 2009-03-23 2009-03-24 2009-03-25 2009-03-26 2009-03-27 2009-03-28 2009-03-29 2009-03-30" | sort
Powinno załatwić sprawę

: 31 marca 2009, 13:32
autor: beel
Pomijając fakt, że podanego przez ciebie ciągu nie trzeba sortować... Możesz posłużyć się dodatkowym plikiem w którym będą zapisywane aktualnie interesujące cię daty, nazwałem go "linie".

Kod: Zaznacz cały

echo >linie
for i in $dat; do
        echo "$i" >>linie
done

ostDAT=`sort linie | tail -1`
Pod zmienną "ostDAT" masz najstarszą datę.