写了份代码,用来同步windows时间。
代码语言:javascript复制package main
import (
"fmt"
"net/http"
"os/exec"
"strings"
"time"
)
func main() {
resp, err := http.Get("http://www.baidu.com")
if err != nil {
// handle error
}
defer resp.Body.Close()
respDateStr := string(resp.Header["Date"][0])
t, _ := time.Parse("Mon, 02 Jan 2006 15:04:05 MST", respDateStr)
loc, _ := time.LoadLocation("Asia/Chongqing")
timeStr := t.In(loc).String()
dateStr := strings.Split(timeStr, " ")[0]
hourStr := strings.Split(timeStr, " ")[1]
fmt.Println("Net time is ", dateStr, hourStr)
exec.Command("cmd", "/C", "date " dateStr).Output()
exec.Command("cmd", "/C", "time " hourStr).Output()
time.Sleep(time.Second * 2)
}
下载: synctime.zip
顺便做了个linux的python3版
代码语言:javascript复制import datetime
import urllib.request
import subprocess
resp=urllib.request.urlopen('http://www.baidu.com', timeout=8)
date = resp.headers["Date"] # like :Sat, 31 Dec 2016 14:54:43 GMT
utc_datetime = datetime.datetime.strptime(date, "%a, %d %b %Y %H:%M:%S %Z")
beijing_time = utc_datetime datetime.timedelta(hours=8)
subprocess.check_output("date -s "{}"".format(beijing_time), shell=True)