ARM linux 时区开发

来源:互联网 发布:python map 源码 编辑:程序博客网 时间:2024/05/16 21:37

  • 时区数据库移植

sudo apt-get install lzip

wget https://www.iana.org/time-zones/repository/releases/tzdb-2017b.tar.lz && lzip -d tzdb-2017b.tar.lz && tar xf tzdb-2017b.tar

cd tzdb-2017b

make install TOPDIR=/tmp/tzdb 


把生成的zoneinfo 拷入到板子中 /usr/share/

比如默认上海时区,执行:

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


  • tzdb说明

tzdb是tzdata和tzcode的合集。tzdata是时区信息的数据库,tzcode是时区的一些命令和用于生成时区数据库的工具。
tz数据库的生成需要一个命令,其为zic。

make install 时zic 打印的信息:

./zic  -y ./yearistype -d /tmp/tzdb/usr/etc/zoneinfo  -l GMT -p America/New_York


  • 命令使用

1. 查看当前时区

      date -R

结果:

Wed, 13 Sep 2017 16:23:34 +0800


2、替换系统时区文件

      例子:

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


3、命令修改时区

可在ubuntu pc上做个快速验证

      tzselect

      按照出来选项菜单,选择你需要的


4. date

# date --help
BusyBox v1.24.1 (2017-06-20 15:49:02 CST) multi-call binary.


Usage: date [OPTIONS] [+FMT] [TIME]


Display time (using +FMT), or set time


        [-s,--set] TIME Set time to TIME
        -u,--utc        Work in UTC (don't convert to local time)
        -R,--rfc-2822   Output RFC-2822 compliant date string
        -I[SPEC]        Output ISO-8601 compliant date string
                        SPEC='date' (default) for date only,
                        'hours', 'minutes', or 'seconds' for date and
                        time to the indicated precision
        -r,--reference FILE     Display last modification time of FILE
        -d,--date TIME  Display TIME, not 'now'
        -D FMT          Use FMT for -d TIME conversion


Recognized TIME formats:
        hh:mm[:ss]
        [YYYY.]MM.DD-hh:mm[:ss]
        YYYY-MM-DD hh:mm[:ss]
        [[[[[YY]YY]MM]DD]hh]mm[.ss]
        'date TIME' form accepts MMDDhhmm[[YY]YY][.ss] instead