ProIT: медіа для профі в IT
3 хв.

Лайфхаки: відображення дат і часу в Linux

author avatar ProIT NEWS

У Linux є багато варіантів відображення дат і часу – навіть для минулих і майбутніх дат. Network World пропонує розглянути способи, як переглянути цю інформацію.

Linux надає багато способів відображення інформації про дату й час, а не лише для поточної дати й часу. Ви можете отримати інформацію про дати в минулому або в далекому майбутньому. Ви також можете обмежити надані дані лише поточним днем ​​тижня чи місяцем.

Відображення поточної дати

Введення «дати» в командному рядку Linux призводить до отримання трохи більше даних, ніж просто дата. Він також містить день тижня, поточний час і часовий пояс.

$ date
Mon Oct 16 11:24:44 AM EDT 2023

Наведена нижче команда відображає дату у скороченому форматі місяць/день/рік.

$ date +%D
10/16/23

Перегляд інформації про будь-яку дату

Насправді команда date -d надасть інформацію про будь-яку вказану вами дату. Якщо вам потрібно знати день тижня, на який припаде 11 листопада певного року, введіть таку команду:

$ date -d 11/11/23
Sat Nov 11 12:00:00 AM EST 2023

Якщо ви хочете переглянути інформацію про день тижня для кількох днів народження за допомогою однієї команди, ви можете взяти список важливих днів народження, збережений у такому файлі:

$ cat birthdays
Jan 4, 1972
Mar 18, 1949
May 1, 1976
Apr 1, 2017
Jan 8, 1954
Sep 23, 1979
Aug 6, 1956
May 2, 2014

Потім запустіть команду date за допомогою параметра -f так:

$ date -f birthdays
Tue Jan  4 12:00:00 AM EST 1972
Fri Mar 18 12:00:00 AM EST 1949
Sat May  1 12:00:00 AM EDT 1976
Sat Apr  1 12:00:00 AM EDT 2017
Fri Jan  8 12:00:00 AM EST 1954
Sun Sep 23 12:00:00 AM EDT 1979
Mon Aug  6 12:00:00 AM EDT 1956
Fri May  2 12:00:00 AM EDT 2014

Щоб побачити поточну дату й час у форматі RFC-2822, скористайтеся такою командою:

$ date --rfc-2822
Mon, 16 Oct 2023 12:06:00 -0400

Ви також можете використовувати цей скорочений метод:

$ date -R
Mon, 16 Oct 2023 12:06:02 -0400

Перегляд дат, пов’язаних із файлами

Ви навіть можете використовувати команду date, щоб відобразити час останнього оновлення файлу за допомогою команди date -r:

$ date -r notes
Tue Sep 19 01:17:37 PM EDT 2023

Використання часових поясів

Щоб отримати поточну дату й час для певного часового поясу, скористайтеся такою командою:

$ TZ=America/New_York date
Mon Oct 16 12:17:51 PM EDT 2023

Слідкуйте за правильним написанням часового поясу, інакше ви можете отримати відповідь, яка змусить вас почухати голову та задуматися, що насправді означає відповідь:

$ TZ="America/Spaghetti" date
Mon Oct 16 05:43:43 PM America 2023

Перегляд деталей часу/дати

Безсумнівно, найдетальнішою командою часу/дати, доступною в Linux, є команда timedatectl, яка надає час як у локальному форматі, так і у форматі UTC, а також деяку додаткову інформацію про налаштування вашої системи.

$ timedatectl
               Local time: Mon 2023-10-16 11:01:40 EDT
           Universal time: Mon 2023-10-16 15:01:40 UTC
                 RTC time: Mon 2023-16 15:01:40
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
          

NTP у передостанньому рядку вихідних даних стосується «протоколу мережевого часу» – Інтернет-протоколу, який використовується для синхронізації джерел часу комп’ютерного годинника в мережі та частини TCP/IP.

Перегляд часових поясів

Linux розпізнає майже 600 часових поясів, які може використовувати команда date. Щоб перелічити їх усі, спробуйте команду timedatectl list-timezones. Ось скорочений приклад того, що ви побачите:

$ timedatectl list-timezones | grep America | column | head -5
America/Adak                            America/Jamaica
America/Anchorage                       America/Jujuy
America/Anguilla                        America/Juneau
America/Antigua                         America/Kentucky/Louisville
America/Araguaina                       America/Kentucky/Monticello

Ви також можете попросити команду date надати одну інформацію про дати. Наприклад, ви можете попросити, щоб день тижня був прописаний повністю так:

$ date +%A
Monday

Додаткові параметри одного значення включають:

Option  Provides                                       Example
%B      The full month name	                       Monday
%F      The date in YYYY-MM-DD format                  2023-10-16
%H      The hour in 24-hour format                     21
%I      The hour in 12-hour format                     9
%j      The day of the year                            289
%S      Seconds                                        34
%V      The week of the year                           35
%x      The date representation based on the locale    10/16/2023
%X      The time representation based on the locale    09:09:11 PM
%Y      Year                                           2023

Команда date може відображати дату й час будь-яким способом, який ви забажаєте, і навіть більше.

Більше лайфхаків на ProIT: Використання команди comm для порівняння файлів або каталогів у Linux.

Підписуйтеся на ProIT у Telegram, щоб не пропустити жодну публікацію!

Приєднатися до company logo
Продовжуючи, ти погоджуєшся з умовами Публічної оферти та Політикою конфіденційності.