Fish Shell:
Porównywanie dwóch dat

How to: (Jak to zrobić:)

# Przykład porównania dwóch dat:
set date1 (date -ud '2023-03-15 00:00:00' +%s)
set date2 (date -ud '2023-03-20 00:00:00' +%s)

if test $date1 -lt $date2
    echo "Date1 jest wcześniejsza niż Date2"
else if test $date1 -eq $date2
    echo "Date1 i Date2 są identyczne"
else
    echo "Date1 jest późniejsza niż Date2"
end

Sample output (Przykładowy wynik):

Date1 jest wcześniejsza niż Date2

Deep Dive (Dogłębna Analiza)

Porównywanie dat nie jest nowością, ale sposób, w jaki to robimy, ewoluował. W przeszłości programiści musieli samodzielnie przeliczać czas na sekundy, porównywać kalendarze itd. Teraz, np. w Fish Shell, używamy funkcji date i konwersji do formatu Unix timestamp (sekundy od 1 stycznia 1970), co uprościło zadanie.

Oprócz date, są inne narzędzia jak datetime w Pythonie, ale Fish jest szczególnie przydatny dla skryptów powłoki i operacji związanych z czasem systemowym. Skrypty w Fish są czytelne i łatwe w użyciu, co sprawia, że jest odpowiednim wyborem dla szybkich operacji na dacie.

Fish nie zawiera natywnego liczenia różnicy w datach. Musimy użyć zewnętrznych poleceń, jak date, aby osiągnąć to, czego potrzebujemy. Jest to sprytne z wykorzystaniem Unix timestampów, ale może być ograniczenie w bardziej skomplikowanych przypadkach użycia, gdzie potrzebna jest większa granularność lub wsparcie dla stref czasowych.

See Also (Zobacz także)