Treść tego artykułu to:
Co to jest znacznik czasu Unix
Znacznik czasu UNIX pokazuje pojedynczą liczbę, która odpowiada do tej pory i godziny. Ta pojedyncza liczba pokazuje łączne sekundy, które minęły od 1 stycznia 1970 r. O 00:00:00 UTC. Nazwaliśmy również ten czas pojedynczego UNIX EPOCH. Timestampy UNIX są używane w wielu różnych językach programowania do reprezentowania dat i czasów w dowolnej strefie czasowej.
Jak konwertować znacznik czasu UNIX do daty
W Linux istnieją różne metody konwersji znacznika czasu UNIX na datę lub odwrotnie. W tym artykule zaczniemy od podstawowej metody, która używa polecenia daty w oknie terminalu.
Metoda 1: Korzystanie z polecenia daty
Aby przekonwertować znacznik czasu UNIX na datę i godzinę czytania człowieka, możemy użyć polecenia daty w terminalu. Składnia polecenia daty jest następujące:
data -d @
Na przykład, aby przekonwertować znacznik czasu UNIX z 1676865654 na datę i godzinę czytania człowieka, uruchom następujące polecenie:
Data -D @1676865654
Jak widać, dane wyjściowe zawiera szczegółowe informacje na temat bieżącej daty i godziny, w tym strefy czasowej i roku.
Podobnie możemy również wygenerować wartość znacznika czasu dla określonej daty. Na przykład wartość znacznika czasu na 1 stycznia 2023 r. O godzinie 12:00:00 może być przy użyciu następującego polecenia:
Data -D „2023-01-01 00:00:00” +%s
Poniższe polecenie zwróci znaczniki czasu UNIX dla bieżącej daty w formacie Nanosekunds:
data +%s%n
Przykład 1: Konwertuj znacznik czasu UNIX na datę i godzinę w określonej strefie czasowej
Aby przekonwertować znacznik czasu UNIX na datę i godzinę w określonej strefie czasowej, nastąpi po składni polecenia:
Tz =data -d @
Na przykład, aby przekonwertować znacznik czasu UNIX z 1613475901 na datę i godzinę czytania człowieka we wschodniej strefie czasowej, uruchom poniżej polecenie:
Tz = America/New_York Data -D @1676865654
Przykład 2: Konwertuj znacznik czasu UNIX tylko na datę
Aby przekonwertować znacznik czasu UNIX tylko na datę, możesz użyć następującego polecenia:
data -d @+„%Y-%m-%d”
Na przykład, jeśli mamy znacznik czasu UNIX z 1613475901 i przekonwertować go w formacie dnia roku (e.G. 2023-02-20) Możemy użyć następującego polecenia:
Data -D @ 1676865654 +'%y-%m-%D'
Będzie to wyświetlić datę odpowiadającą znacznikowi znacznika UNIX 1613475901:
Metoda 2: Korzystanie z języka programowania Perla
Perl to popularny język programowania, którego można użyć do generowania znaczników czasu UNIX w Linux.
Otwórz edytor nano za pomocą:
Nano
Teraz utwórz prosty skrypt Perla, który generuje znacznik czasu UNIX dla bieżącej daty i godziny:
#!/usr/bin/perl
czas drukowania ();
Naciśnij Ctrl + O, a następnie zapisz ten skrypt jako „znak czasu.pl”I naciśnij Enter, a następnie naciśnij Ctrl + X, aby zapisać i wyjść:
Teraz uruchomić to, uruchamiając:
CHMOD +X Timestamp.pl
Uruchom skrypt z poleceniem „./znak czasu.PL ”, aby wygenerować znacznik czasu Unixa:
Metoda 3: Korzystanie z języka programowania Pythona
Python to kolejny popularny język programowania, którego można użyć do generowania znaczników czasu UNIX w Linux.
Najpierw musimy zainstalować Python3 w Linux, aby wykonać polecenie uruchomienia:
sudo apt instal Python3
Teraz otwórz edytor Nano za pomocą:
Nano
Utwórz prosty skrypt Python, który generuje znacznik czasu UNIX dla bieżącej daty i godziny:
#!/usr/bin/python3
czas importu
Drukuj (int (czas.czas()))
Naciśnij Ctrl + O, a następnie zapisz ten skrypt jako „znak czasu.py”I naciśnij Enter, a następnie naciśnij Ctrl + X, aby zapisać i wyjść.
Powyższy skrypt może być wykonywany przez poniższe polecenie:
CHMOD +X Timestamp.py
Uruchom skrypt z poleceniem „./znak czasu.py ”, aby wygenerować znacznik czasu Unix.
Metoda 4: Za pomocą skryptu Bash
Jeśli chcesz generować znaczniki czasu UNIX w bardziej złożony lub zautomatyzowany sposób, możesz użyć skryptu Bash.
Otwórz edytor nano za pomocą:
Nano
Napisz następujący skrypt w edytorze, który generuje znacznik czasu UNIX dla bieżącej daty i godziny:
#!/bin/bash
Echo $ (data +%s)
Naciśnij Ctrl + O, a następnie zapisz ten skrypt jako „znak czasu.cii”I naciśnij Enter, a następnie naciśnij Ctrl + X, aby zapisać i wyjść:
Teraz uruchom ten skrypt, uruchamiając polecenie:
CHMOD +X Timestamp.cii
Uruchom skrypt z poleceniem „./znak czasu.sh ”, aby wygenerować znacznik czasu UNIX:
Wniosek
Znacznik czasu Unix pokazuje łączne sekundy minęły od 1 stycznia 1970 r. Aby wygenerować znaczniki czasu UNIX w Linux, polecenie daty można użyć w wierszu poleceń, przekazując argument +%S. Alternatywnie możemy również utworzyć skrypt bash lub użyć skryptu języka Pearl i Python, aby dać nam znacznik czasu dla dokładnej strefy daty i czasów.