openwrt 运行golang 设置时区
作者:互联网
转载自:https://www.ohyee.cc/post/note_go_read_openwrt_timezone
openwrt 运行golang 时候发现打印时间错误。golang读取时区的过程:
- 读取
TZ
环境变量 - 读取
/etc/localtime
文件 - 本地时区读取失败,使用 UTC 时间
所以我们可以设置/etc/localtime 的时区。但是/etc/localtime文件不是随便写的,需要符合一定的格式。所以安装时区文件:
opkg update
opkg install zoneinfo-asia
时区设置为上海:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
运行代码:
package main
import (
"fmt"
"syscall"
"time"
)
func main() {
t := time.Now().Format("2006-01-02 15:04:05")
fmt.Println(t)
fmt.Println(time.Local)
tz, ok := syscall.Getenv("TZ")
fmt.Println(tz,ok)
}
可以看到时间已经正确:
2022-05-02 22:42:28
Local
false
标签:读取,fmt,golang,etc,设置,openwrt,localtime 来源: https://www.cnblogs.com/jing1024/p/16217235.html