cách đọc thông tin múi giờ


8

Tôi đã xem một số cuốn sách lập trình hệ thống. Nó được đề cập để sử dụng một biến TZvới một danh sách phân tách dấu hai chấm được sử dụng từ /usr/share/zoneinfo. Có lẽ cuốn sách đã hơi lỗi thời.

Tôi đã kiểm tra trên hệ thống Ubuntu của mình

/usr/share/zoneinfo/Asia$ file Oral

đưa ra đầu ra sau

Truyền miệng: dữ liệu múi giờ, phiên bản 2, cờ thời gian 14 gmt, cờ thời gian 14 giây, không có giây nhuận, 51 lần chuyển tiếp, 14 ký tự viết tắt

Tôi đã thử mở nó trong vi nhưng văn bản không thể đọc được. Tôi cũng đã thử đọc /etc/localtimenhưng ở đây cũng không thể đọc được.

  1. Về cơ bản tôi có thể đọc loại tập tin ở trên như thế nào?

  2. Biến môi trường TZ được định nghĩa trong Ubuntu 10.04 ở đâu?

Câu trả lời:


10

Vâng, nó phụ thuộc vào những gì bạn muốn đọc nó cho?

Hầu như tất cả các chương trình chỉ dựa vào $TZviệc được đặt trong môi trường hoặc /etc/localtimelà một liên kết đến tệp múi giờ. Thư viện C sau đó sẽ tự động sắp xếp ví dụ localtime()để trả về thời gian chính xác.

1) Về cơ bản tôi có thể đọc loại tệp trên

zdump -v /etc/localtime sẽ cho bạn thấy những gì bên trong các tập tin.

Đây là những tập tin được biên dịch không dành cho con người để đọc. apt-get source tzdatasẽ cung cấp cho bạn nguồn họ đến từ.

2) Biến môi trường TZ được xác định ở đâu trong Ubuntu 10.04

Nó không được đặt theo mặc định. Thay vào đó, /etc/localtimelà một bản sao của tệp vùnginfo có liên quan và /etc/timezonelà tên của vùng đó.

Bạn có thể thay đổi chúng bằng sudo tzconfighoặc thông qua GUI.

Bạn có thể đặt nó trong ví dụ ~/.envnếu bạn muốn một mặc định cá nhân khác cho chính mình.


Tạo ~/.envvới UTCtrong nó không có tác dụng trên múi giờ địa phương.
jfs

Ngày nay, đó là tzselect
jiggunjer

tzselectkhông phải là sự thay thế cho tzconfig: nó chỉ chọn múi giờ và in ra thiết bị xuất chuẩn mà không thay đổi bất kỳ cấu hình nào . Sự thay thế hiện đại thực tế là dpkg-reconfigure tzdata.
poolie
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.