как читать информацию о часовом поясе

Я смотрел какую-то книгу по системному программированию. В нем упоминается использование переменной TZ с разделенным двоеточиями списком, который используется из /usr/share/zoneinfo. Вероятно, книга немного устарела.

Я проверил в своей системе Ubuntu

/usr/share/zoneinfo/Asia$ file Oral

дает следующий вывод

Устные: данные о часовом поясе, версия 2, временные флаги 14 gmt, 14 стандартных флагов времени, без скачка секунд, 51 время перехода, 14 символов сокращения

Я попытался открыть его в vi, но текст не смог прочитать. Я также пытался читать /etc/localtime, но и здесь это не могло быть прочитано.

  1. Как я могу в основном читать файлы вышеуказанного типа?

  2. Где переменная среды TZ определена в Ubuntu 10.04?

8
задан 17 February 2017 в 19:38

1 ответ

Ну, это зависит от того, для чего ты хочешь это прочитать?

Почти все программы просто полагаются на то, что $TZ устанавливается в среде или /etc/localtime является ссылкой на файл часового пояса. Затем библиотека C автоматически организует, например, localtime(), чтобы вернуть правильное время.

1) Как я могу в основном читать файлы вышеуказанного типа

zdump -v /etc/localtime покажет вам, что находится внутри файлов.

1113 Это скомпилированные файлы, которые не предназначены для чтения людьми. apt-get source tzdata даст вам источник, из которого они пришли.

2) Где переменная окружения TZ определена в Ubuntu 10.04

По умолчанию она не установлена. Вместо этого /etc/localtime является копией соответствующего файла zoneinfo, а /etc/timezone является именем этой зоны.

Вы можете изменить их с помощью sudo tzconfig или через графический интерфейс.

Вы могли бы установить его, например, ~/.env, если вы хотите использовать другое персональное значение по умолчанию для себя.

0
ответ дан 17 February 2017 в 19:38

Другие вопросы по тегам:

Похожие вопросы: