Linux date set – установка времени

Чтобы узнать какое время стоит на компьютере в командной строке Linux используют утилиту date. Она позволяет работать с датой и временем.

Синтаксис

data [параметры] [+ управление выводом ФОРМАТ]

Основные параметры:

  • -d. Показывает время  и дату в строке. Например tommorow, last tuesday,  wednesday, thursday, friday, saturday, sunday. Вся команда пишется date -d tommorow.
  • -r. Показывает время изменения файла.
  • -R. Выводит время согласно стандарту RFC-2822. Пример Tue, 13 Aug 2019 10:03:27 +0600.
  • -s или --set. Устанавливает системное время.
  • u. Вывод даты в международном формате UTC.
  • --help. На экране покажет справочную информацию.
  • --version. Версия программы.

Управление выводом это не обязательный параметр. Чтобы его включить необходимо написать знак + и шаблон.

Основные шаблоны:

  • %% - на экране знак процента.
  • %a - на экране текущий день недели, в краткой форме. Например "Втр".
  • %A - день недели в полной форме. Например "Вторник".
  • %b - текущий месяц в краткой форме (Авг).
  • %B - месяц в полной форме (Август).
  • %c - стандартный вывод даты и времени без часового пояса.
  • %C - аргумент покажет две первые цифры от года. Например если в системном времени стоит 2019, то на экране будет "20".
  • %d. Покажет какой сегодня день.
  • %D. Дата в формате месяц/число/год.
  • %e. Покажет какой сегодня день.
  • %F. Покажет дату в формате год - месяц - число.
  • %h. Текущий месяц в сокращенном варианте. Пример Авг.
  • %H. Сколько сейчас часов в формате 24.
  • %I. Часы в формате 12.
  • %j. Номер дня году, от 001 до 366.
  • %m. Какой месяц в формате от 1 -12.
  • %M. Выводит минуты в формате 00 до 59.
  • %S. Покажет сколько сейчас секунд на системных часах, от 00 до 59.
  • %n. Сделает отступ, две строки вниз.
  • %t. Табуляция, отступ одна строка вниз.
  • %T. Время в формате 00 (часы) : 00 (минуты): 00 (секунды).
  • %u. День недели числом, где 1 это понедельник, 2 -вторник, 3 - среда, 4-четверг, 5 - пятница, 6- суббота, 7 - воскресенье.
  • %x. Дата - день.месяц.год.
  • %X. Время - часы(24) : минуты : секунды.
  • %Z. На экране часовой пояс. Пример OMST - это неофициальное название локальной временной зоны города Омска.
  • %Y. Год.

Примеры

Для первого примера введем команду без параметров.
date

Дата без аргументовКак видно на скриншоте выше утилита без параметров покажет текущие время.

Когда синхронизация времени с внешним источником не работает и в локальной сети нет сервера времени, необходимо быстро установить системное время на Линуксе. Для этого используется утилита с параметром "-s". Пусть сейчас точное время 18:00:00.

Тогда установим время так:

date -s 18:00

Установка времени

Добавим дату. Для этого нужно ввести дату по шаблону год-месяц-число и заключить все в кавычки.

date -s "2019-08-14 18:00"

Установка даты

Узнаем дату время изменения файла под именем "file". Для это используем аргумент "-r".

date -r file

Изменение документа

ВАЖНО! Если файл не лежит в текущей директории, необходимо указать путь. В моем случае это /root/file

Работа с часовым поясом

Чтобы вывести на экран время в определенном часовом поясе необходимо указать аргумент TZ по шаблону TZ='часовой пояс' date

TZ может принимать значения:

  1. 'Europe/Moscow';
  2. 'Europa/Berlin';
  3. 'Europa/Polsha';
  4. 'America/Los_Angeles';
  5. и другие.

Узнаем время по Москве.

TZ='Europe/Moscow' date

Часовой пояс