data -d: jakie wiersze są akceptowane?


Używam polecenia „date”, aby wykonać prostą arytmetykę na datach. Opcja „-d” pozwala mi to zrobić, ale na stronach podręcznika systemowego nie jest jasne, które dane są prawidłowe. Jakie są wszystkie możliwe opcje i jak to rozgryźć?
Mogę użyć tego polecenia, aby określić datę 5 minut temu: data -d "5 minut temu" +% H:% M
To polecenie również działa: date -d "-5 minut" +% H:% M
Natknąłem się na te opcje/rozczarowanie przez przypadek. W dokumentacji nie widzę opcji „minuty temu” ani „-X minut”.
Użyłbym Perla do arytmetyki, ale niestety nie mogę zainstalować żadnych dodatkowych pakietów Perla.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Istnieje wiele ciągów dat względnych.
         minutes ago
prace (vs.
         minutes-ago
z myślnikiem).
Istnieje kilka przykładów dotyczących coreutils
         date
strony informacyjne:
http://www.gnu.org/software/co ... .html
http://www.gnu.org/software/co ... .html
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Najtrudniejszym z nich jest format UNIX timestamp (jest to przydatne, jeśli zarządzasz bazą danych plików tekstowych - chcesz przechowywać dane daty i czasu jako znaczniki czasu UNIX, aby móc wykonywać na nich wewnętrzne obliczenia matematyczne)
$ date +%s
1299273353
$ date -d @1299273353
Fri Mar 4 15:15:53 CST 2011

Znak at mówi komendzie date, że liczba jest znacznikiem czasu UNIX.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Nie musisz instalować dodatkowych pakietów do obsługi matematyki dat w Perlu; po prostu użyj

czas()
http://perldoc.perl.org/functions/time.html
aby uzyskać przesunięcie epoki, i

czas lokalny()
http://perldoc.perl.org/functions/localtime.html
aby przekształcić je w użyteczną strukturę danych daty.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się