Jak mogę wygenerować znaczniki czasu UNIX w Linux

Jak mogę wygenerować znaczniki czasu UNIX w Linux
W znaczniku czasu Unix reprezentujemy dowolną datę i czas razem w jednej długiej liczbie. Ta pojedyncza liczba opisuje łączne sekundy minęły od 1 stycznia 1970 r. O 00:00:00 UTC. W tym przewodniku omówimy wszystko o przekształcaniu znaczników czasu Unix na randki, w tym, jakie są znacznik czasu Unixa, jak je przekonwertować na datę, oraz kilka praktycznych przykładów, które pomogą Ci zacząć.

Treść tego artykułu to:

  • Co to jest znacznik czasu Unix?
  • Jak konwertować znacznik czasu UNIX do daty
  • Metoda 1: Korzystanie z polecenia daty
    • Przykład 1: Konwertuj znacznik czasu UNIX na datę i godzinę w określonej strefie czasowej
    • Przykład 2: Konwertuj znacznik czasu UNIX tylko na datę
  • Metoda 2: Korzystanie z języka programowania Perla
  • Metoda 3: Korzystanie z języka programowania Pythona
  • Metoda 4: Za pomocą skryptu Bash
  • Wniosek

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.

  • Korzystanie z polecenia daty
  • Korzystanie z języka programowania Perla
  • Korzystanie z języka programowania Pythona
  • Używając skryptu Bash

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.