Рейтинг@Mail.ru

Наши партнеры

UnixForum


Библиотека сайта rus-linux.net

Команда zdump для начинающих

Оригинал: Linux zdump Command Tutorial for Beginners (with Examples)
Автор: Himanshu Arora
Дата публикации: 2 ноября 2018 года
Перевод: А. Кривошей
Дата перевода: сентябрь 2019 г.

Сейчас, когда члены одной команды могут работать из разных стран, иногда становится важно обладать информацией о часовых поясах для разных мест. В целом, также могут быть ситуации, в которых вам нужно быстро просмотреть часовой пояс для определенного местоположения. Вам может быть интересно узнать, что есть утилита командной строки - zdump, которая позволяет это делать.

В этом руководстве мы обсудим основы использования zdump на нескольких простых для понимания примерах. Необходимо отметить, что все примеры, упомянутые в этой статье, были протестированы на машине с Ubuntu 18.04 LTS.

Команда zdump

Команда zdump в Linux - это, по сути, инструмент создания дампов часовых поясов. Ниже приводится ее синтаксис:

zdump [--version] [--help] [-v] [-c [loyear,]hiyear] [zonename...]

И вот как описывает ее справочная страница:

Программа zdump выводит в командной строке текущее время в каждом часовом поясе.

Ниже приведены несколько примеров, которые должны дать вам хорошее представление о том, как работает команда zdump.

Q1. Как использовать команду zdump?

Основы довольно простые. Просто выполните 'zdump' с названием местоположения в качестве ввода.

Например:

$ zdump Singapore

Ниже приведен вывод команды, произведенной в моей системе:

Singapore  Wed Oct 31 17:35:39 2018 +08

Вот еще несколько примеров:

пример использования zdump

Здесь стоит упомянуть, что с помощью zdump вы можете получить информацию о городе. Ниже приведены некоторые примеры:

получение информации о городе

Q2. Как заставить zdump выдавать подробную информацию?

Если вы хотите, чтобы zdump генерировал подробную информацию, используйте параметр командной строки -v. Например, следующая команда:

$ zdump -v Singapore

производит вывод:

Singapore  -9223372036854775808 = NULL
Singapore  -9223372036854689408 = NULL
Singapore  Mon Dec 31 17:04:34 1900 UT = Mon Dec 31 23:59:59 1900 LMT isdst=0 gmtoff=24925
Singapore  Mon Dec 31 17:04:35 1900 UT = Tue Jan  1 00:00:00 1901 SMT isdst=0 gmtoff=24925
Singapore  Wed May 31 17:04:34 1905 UT = Wed May 31 23:59:59 1905 SMT isdst=0 gmtoff=24925
Singapore  Wed May 31 17:04:35 1905 UT = Thu Jun  1 00:04:35 1905 +07 isdst=0 gmtoff=25200
Singapore  Sat Dec 31 16:59:59 1932 UT = Sat Dec 31 23:59:59 1932 +07 isdst=0 gmtoff=25200
Singapore  Sat Dec 31 17:00:00 1932 UT = Sun Jan  1 00:20:00 1933 +0720 isdst=1 gmtoff=26400
Singapore  Tue Dec 31 16:39:59 1935 UT = Tue Dec 31 23:59:59 1935 +0720 isdst=1 gmtoff=26400
Singapore  Tue Dec 31 16:40:00 1935 UT = Wed Jan  1 00:00:00 1936 +0720 isdst=0 gmtoff=26400
Singapore  Sun Aug 31 16:39:59 1941 UT = Sun Aug 31 23:59:59 1941 +0720 isdst=0 gmtoff=26400
Singapore  Sun Aug 31 16:40:00 1941 UT = Mon Sep  1 00:10:00 1941 +0730 isdst=0 gmtoff=27000
Singapore  Sun Feb 15 16:29:59 1942 UT = Sun Feb 15 23:59:59 1942 +0730 isdst=0 gmtoff=27000
Singapore  Sun Feb 15 16:30:00 1942 UT = Mon Feb 16 01:30:00 1942 +09 isdst=0 gmtoff=32400
Singapore  Tue Sep 11 14:59:59 1945 UT = Tue Sep 11 23:59:59 1945 +09 isdst=0 gmtoff=32400
Singapore  Tue Sep 11 15:00:00 1945 UT = Tue Sep 11 22:30:00 1945 +0730 isdst=0 gmtoff=27000
Singapore  Thu Dec 31 16:29:59 1981 UT = Thu Dec 31 23:59:59 1981 +0730 isdst=0 gmtoff=27000
Singapore  Thu Dec 31 16:30:00 1981 UT = Fri Jan  1 00:30:00 1982 +08 isdst=0 gmtoff=28800
Singapore  9223372036854689407 = NULL
Singapore  9223372036854775807 = NULL

Вот как man-страница объясняет эту опцию:

-v
Для каждого часового пояса указанного в командной строке, выводится наименьшее возможное время, время через день после наименьшего возможного времени, время за одну секунду до и точное время обнаруженных временных разрывов, время за день до максимально возможного времени и максимально возможное время. Каждая строка заканчивается isdst=1, если указанное время является летним временем, в противном случае isdst=0.

Q3. Что делает опция -c?

Опция -c обрезает подробный вывод в начале заданного года. Вот как man-страница объясняет ее:

-c [loyear,]hiyear

Обрезать подробный отчёт в районе начала указанного года. В выводе всё ещё будет самая старая возможная дата плюс один день и самая новая дата минус один день.

Ниже приведен пример:

$ zdump -v -c 1935 Singapore

А вот вывод:

Singapore  -9223372036854775808 = NULL
Singapore  -9223372036854689408 = NULL
Singapore  Mon Dec 31 17:04:34 1900 UT = Mon Dec 31 23:59:59 1900 LMT isdst=0 gmtoff=24925
Singapore  Mon Dec 31 17:04:35 1900 UT = Tue Jan  1 00:00:00 1901 SMT isdst=0 gmtoff=24925
Singapore  Wed May 31 17:04:34 1905 UT = Wed May 31 23:59:59 1905 SMT isdst=0 gmtoff=24925
Singapore  Wed May 31 17:04:35 1905 UT = Thu Jun  1 00:04:35 1905 +07 isdst=0 gmtoff=25200
Singapore  Sat Dec 31 16:59:59 1932 UT = Sat Dec 31 23:59:59 1932 +07 isdst=0 gmtoff=25200
Singapore  Sat Dec 31 17:00:00 1932 UT = Sun Jan  1 00:20:00 1933 +0720 isdst=1 gmtoff=26400
Singapore  9223372036854689407 = NULL
Singapore  9223372036854775807 = NULL

Заключение

Согласен, команда zdump - это не тот инструмент, который большинству из нас понадобится каждый день, но это полезная утилита, о которой вы должны знать, поскольку вы никогда не знаете, когда она может вам понадобиться. Более подробную информацию о zdump можно получить на его справочной странице.

Если вам понравилась статья, поделитесь ею с друзьями: