- Настройка даты и времени в Linux – команда date
- Синтаксис и основные опции
- Форматы ввода/вывода даты и времени
- Заключение
- Linux date set — установка времени
- Синтаксис
- Примеры
- Работа с часовым поясом
- Команда Date в Linux с примерами
- Использование команды date в Linux
- Параметры форматирования даты
- Дата строкой
- Переопределить часовой пояс
- Конвертер эпох
- Использование даты с другими командами
- Показать время последнего изменения файла
- Установите системное время и дату
- Заключение
- Команда Date в Linux с примерами
- Linux Date Command with Examples
- В этом руководстве мы рассмотрим основы date команды.
- Использование Date
- Параметры форматирования даты
- Пользовательское форматирование даты
- Переопределить часовой пояс
- Конвертер эпох
- Использование date с другими командами
- Показать время последнего изменения файла
- Установите системное время и дату
- Вывод
Настройка даты и времени в Linux – команда date
Как это часто бывает, всё самое важное скрывается за самыми простыми вещами. Так и в случае с установкой/настройкой даты и времени в системе. Некорректные значения этих параметров запросто ломают логику работы многих приложений, особенно это касается тех систем, где на этом построены целые сервисы, такие как интернет-магазины, SCADA-системы на производстве и т. д. Поэтому так важно следить за корректными настройками времени, даты, языковых форматов, а также уметь все эти параметры настраивать. В системах Linux всё это позволяет выполнять команда date.
Синтаксис и основные опции
Согласно официальной информации, доступной из справочного руководства (команда man date), синтаксис команды date следующий:
Если дать команду date без аргументов или если аргументы начинаются с символа «+», то по-умолчанию будет выведено текущие значения даты и времени. В ином случае производится установка даты и времени, передаваемые в аргументах в каком-либо из форматов. Например, для установки времени введите команду
MM — Месяц
DD — День,
hh — часы в 24-часовом формате,
mm — минуты,
YYYY — 4 цифры года,
ss — секунды.
Прежде чем установить время проверьте правильность установки временной зоны.
Ниже мы боле подробно рассмотрим параметры ввода даты и времени.
Следующая команда выводит информацию о текущих дате и времени в форматированном виде:
Как видно, символ «+» позволяет печатать установленные (текущие) значения, а следующее за ним выражение задаёт формат вывода этих значений. Шаблон подстановки «%n» здесь служит для переноса строки. Все остальные шаблоны подстановки используются для выборки соответствующих компонент времени: месяцы, дни, часы, минуты и т. д. Само же выражение должно заключаться в кавычках, если в нём присутствуют пробельные символы.
Параметры CC, YY и .ss в синтаксисе date означают две последние цифры года, век и секунды (от 0 до 59) соответственно. И эти параметры не являются обязательными. Для того, чтобы устанавливать дату и время с помощью команды date, необходимы права суперпользователя.
В следующей таблице приводится описание основных опций команды date:
Опция | Значение |
-d, —date=STRING | Вычисляет день недели для заданной даты в качестве STRING. Дата задаётся в формате ггммдд. |
-f, —file=DATEFILE | То же самое, что и -d, но для исходных данных используется содержимое из файла FILE. |
-r, —reference=FILE | Определяет время последней модификации файла FILE. |
-s, —set=STRING | Устанавливает время/дату, заданные строкой STRING. |
-u, —utc, —universal | Использование формата |
Форматы ввода/вывода даты и времени
Для формата ввода даты/времени предусматриваются специальные элементы записи того или иного компонента даты/времени. В следующей таблице приводится описание этих элементов записи в виде пар букв, которым соответствуют составляющие даты и времени:
Элемент | Описание |
mm | Минуты — от 0 до 59. |
hh | Часы — от 0 до 23. |
DD | Дни — от 0 до 28, 29, 30 и 31. |
MM | Месяцы — от 01 до 12. |
Как уже можно было видеть, возвращаемые командой данные из её вывода можно форматировать произвольным способом, используя для этого специальные шаблоны подстановки или параметры форматирования. Они служат, как уже было отмечено выше, для выборки требуемых компонентов данных даты/времени из вывода команды date. Список этих параметров довольно длинный, но при этом его легко запомнить, поскольку наименования параметров довольно логичны. Следующая таблица отражает самые основные и часто используемые параметры форматирования:
Узнать время последнего изменения какого-либо файла:
Узнать день недели по его дате:
Вообще, команду date очень активно используют программисты для написания программного кода приложений, работающих с датой/временем, а также при написании скриптов для автоматизации некоторых процессов. Например, для автоматического наименования фалов, в имени которых содержится подстрока с датой его создания:
В результате будет создана копия файла settings.php под именем settings.php_back-070319. В данном случае используется директива $( ) для задания имени файла. Нужно заметить, что данный приём — очень мощный инструмент при работе в командной оболочке Linux.
Заключение
В заключение следует отметить отличную гибкость и большие возможности простой консольной утилиты, доступной по команде date, которая на первый взгляд не представляется заслуживающей внимания. Однако, команда date – это яркий пример «маленькой, но очень эффективной программы» в UNIX-подобных системах.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
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 «2019-08-14 18:00»
Узнаем дату время изменения файла под именем «file». Для это используем аргумент «-r».
ВАЖНО! Если файл не лежит в текущей директории, необходимо указать путь. В моем случае это /root/file
Работа с часовым поясом
Чтобы вывести на экран время в определенном часовом поясе необходимо указать аргумент TZ по шаблону TZ=’часовой пояс’ date
TZ может принимать значения:
- ‘Europe/Moscow’;
- ‘Europa/Berlin’;
- ‘Europa/Polsha’;
- ‘America/Los_Angeles’;
- и другие.
Источник
Команда Date в Linux с примерами
В этой статье мы рассмотрим основы команды date в Linux.
Использование команды date в Linux
Синтаксис команды date следующий:
Чтобы отобразить текущее системное время и дату, используя форматирование по умолчанию, вызовите команду без каких-либо параметров:
Вывод будет включать день недели, месяц, день месяца, время, часовой пояс и год:
Параметры форматирования даты
Вывод date может быть отформатирован с помощью последовательности символов управления форматом, перед которой стоит знак +. Элементы управления форматом начинаются с символа % и заменяются их значениями.
Символ %Y будет заменен на год, %m на месяц и %d на день месяца:
Вот еще один пример:
Ниже приведен небольшой список некоторых наиболее распространенных символов форматирования:
- %a – Сокращенное название дня недели (например, понедельник)
- %A – Сокращенное полное название дня недели (например, понедельник)
- %b – Сокращенное краткое название месяца (например, январь)
- %B – Сокращенное длинное название месяца (например, январь)
- %d – День месяца (например, 01)
- %H – Час (00..23)
- %I – Час (01.12.12)
- %j – День года (001..366)
- %m – Месяц (01.12.12)
- %M – Минута (00..59)
- %S – Секунда (00 .. 60)
- %u – День недели (1..7)
- %Y – Полный год (например, 2019)
Чтобы получить полный список всех параметров форматирования, запустите date –help или man date в своем терминале.
Дата строкой
Опция -d позволяет работать на конкретную дату. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:
Использование пользовательского форматирования:
Строка даты также может принимать значения, такие как “tomorrow”, “friday”, “last friday” “next friday”, “next month”, “next week”… и т. д.
Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время для 6:30 утра следующего понедельника по Московскому времени, введите:
Переопределить часовой пояс
Команда date использует системный часовой пояс по умолчанию . Чтобы использовать другой часовой пояс, установите переменную среды TZ в желаемый часовой пояс.
Например, чтобы показать время по Москве, введите:
Чтобы получить список всех доступных часовых поясов, вы можете либо перечислить файлы в каталоге /usr/share/zoneinfo, либо использовать команду timedatectl list-timezones.
Конвертер эпох
Команда date может быть использована в качестве преобразователя эпох. Время, или метки времени Unix, – это количество секунд, прошедших с 1 января 1970 года в 00:00:00 UTC.
Чтобы напечатать количество секунд от эпохи до текущего дня, используйте управление форматом %s:
Чтобы преобразовать секунды с начала эпохи в дату, установите секунды в виде строки даты с префиксом @:
Использование даты с другими командами
Команда date чаще всего используется для создания имен файлов, которые содержат текущее время и дату.
Команда ниже создаст файл резервной копии Mysql в следующем форматеdatabase_name-20190601.sql
Вы также можете использовать команду date в своих сценариях оболочки. В приведенном ниже примере мы присваиваем выход date к переменной date_now:
Показать время последнего изменения файла
Команда dateс c параметром -r показывает время последнего изменения файла. Например:
Если вы хотите изменить временную метку файла, используйте команду touch.
Установите системное время и дату
Установка системного времени и даты вручную с помощью dateкоманды обычно не рекомендуется, поскольку в большинстве дистрибутивов Linux системные часы синхронизируются с ntp помощью служб systemd-timesyncd.
Однако, если вы хотите установить системные часы вручную, вы можете использовать опцию –set=. Например, если вы хотите установить дату и время 12:54, 02 июня 2019 г., введите:
Заключение
К настоящему времени вы должны хорошо понимать, как использовать команду date в Linux.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Команда Date в Linux с примерами
Linux Date Command with Examples
В этом руководстве мы рассмотрим основы date команды.
Команда date отображает или устанавливает системную дату. Чаще всего он используется для печати даты и времени в разных форматах и для расчета будущих и прошлых дат.
Использование Date
Синтаксис date команды следующий:
Выходные данные включают день недели, месяц, день месяца, время, часовой пояс и год:
Параметры форматирования даты
Вывод date команды может быть отформатирован с помощью последовательности символов управления форматом, перед которой стоит + знак. Элементы управления форматом начинаются с % символа и заменяются их значениями.
Символ %Y будет заменен на год, %m месяц и %d день месяца:
Вот еще один пример:
Ниже приведен небольшой список некоторых наиболее распространенных символов форматирования:
- %a — Сокращенное название дня недели (например, понедельник)
- %A — Сокращенное полное название дня недели (например, понедельник)
- %b — Сокращенное название месяца (например, январь).
- %B — сокращенное длинное название месяца (например, январь)
- %d — день месяца (например, 01)
- %H — час (00..23)
- %I — час (01.12.12)
- %j — День года (001..366)
- %m — Месяц (01.12.12)
- %M — Минута (00..59)
- %S — Второй (00 .. 60)
- %u — день недели (1..7)
- %Y — Полный год (например, 2019)
Чтобы получить полный список всех параметров форматирования, запустите date —help или man date в своем терминале.
Пользовательское форматирование даты
-d Опция позволяет работать на дату конкретного. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:
Использование пользовательского форматирования:
Строка даты принимает значения, такие как «завтра», «пятница», «последняя пятница», «следующая пятница», «следующий месяц», «следующая неделя» .. и т. Д.
Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время 6:30 утра следующего понедельника на восточном побережье Австралии, введите:
Переопределить часовой пояс
Команда date возвращает дату в системном часовом поясе по умолчанию . Чтобы использовать другой часовой пояс, установите переменную среды TZ в желаемый часовой пояс.
Например, чтобы показать время в Мельбурне, введите:
Чтобы получить список всех доступных часовых поясов , вы можете либо перечислить файлы в /usr/share/zoneinfo каталоге, либо использовать timedatectl list-timezones команду.
Конвертер эпох
date Команда может быть использована в качестве преобразователя Epoch. Время, или метки времени Unix, — это количество секунд, прошедших с 1 января 1970 года в 00:00:00 UTC.
Чтобы напечатать количество секунд от эпохи до текущего дня, вызовите date с %s контролем формата:
Чтобы преобразовать секунды с начала эпохи в дату, установите секунды в виде строки даты с префиксом @ :
Использование date с другими командами
Команда date чаще всего используется для создания имен файлов, которые содержат текущее время и дату.
Команда ниже создаст файл резервной копии Mysql в следующем формате database_name-20190601.sql
Вы также можете использовать date команду в своих сценариях оболочки. В приведенном ниже примере мы присваиваем выход date к date_now переменной:
Показать время последнего изменения файла
Команда date с -r параметром показывает время последнего изменения файла. Например:
Если вы хотите изменить временную метку файла, используйте touch команду .
Установите системное время и дату
Установка системного времени и даты вручную с помощью этой date команды не рекомендуется, поскольку в большинстве дистрибутивов Linux системные часы синхронизируются с ntp помощью systemd-timesyncd служб или .
Однако, если вы хотите установить системные часы вручную, вы можете использовать эту —set= опцию. Например, если вы хотите установить дату и время 17:30, 01 июня 2019 г., введите:
Вывод
Команда Linux date отображает или устанавливает системную дату и время.
Источник