11.6. Pobranie daty poprzedniego lub kolejnego dnia w języku Perl

Problem

Chcemy pobrać datę poprzedniego lub następnego dnia, mimo że w systemie nie jest zainstalowany program date z repozytorium GNU. Jest natomiast dostępny interpreter Perl.

Rozwiązanie

Rozwiązanie polega na wykorzystaniu poniższych poleceń Perl z odpowiednią liczbą sekund, które są dodawane do ustalonej daty lub od niej odejmowane.

# Dzień poprzedni o tym samym czasie (odejmowanie wartości)
$ perl -e "use POSIX qw(strftime); print strftime('%Y-%m-%d', localtime(time -
86400)), qq(\n);"

# Dzień następny o tym samym czasie (dodawanie wartości)
$ perl -e "use POSIX qw(strftime); print strftime('%Y-%m-%d', localtime(time +
86400)), qq(\n);"

Analiza

Przedstawione rozwiązanie jest szczególnym ...

Get Bash. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.