zoukankan      html  css  js  c++  java
  • Golang修改操作系统时间

    Golang修改操作系统时间

    需求

    程序有时需要和服务器对时,发现延迟过高修改本地时间,这段代码网上抄的,实测可用,windows环境需要以管理员身份启动命令提示符调试

    实现Demo

    package main
    
    import (
    	"github.com/gogf/gf/os/glog"
    	"github.com/gogf/gf/os/gproc"
    	"github.com/gogf/gf/text/gstr"
    	"runtime"
    )
    
    func main() {
    	UpdateSystemDate("2020-03-20 15:02:41.372")
    }
    
    func UpdateSystemDate(dateTime string) bool {
    	system := runtime.GOOS
    	switch system {
    	case "windows":
    		{
    			_, err1 := gproc.ShellExec(`date  ` + gstr.Split(dateTime, " ")[0])
    			_, err2 := gproc.ShellExec(`time  ` + gstr.Split(dateTime, " ")[1])
    			if err1 != nil && err2 != nil {
    				glog.Info("更新系统时间错误:请用管理员身份启动程序!")
    				return false
    			}
    			return true
    		}
    	case "linux":
    		{
    			_, err1 := gproc.ShellExec(`date -s  "` + dateTime + `"`)
    			if err1 != nil {
    				glog.Info("更新系统时间错误:", err1.Error())
    				return false
    			}
    			return true
    		}
    	case "darwin":
    		{
    			_, err1 := gproc.ShellExec(`date -s  "` + dateTime + `"`)
    			if err1 != nil {
    				glog.Info("更新系统时间错误:", err1.Error())
    				return false
    			}
    			return true
    		}
    	}
    	return false
    }
    
  • 相关阅读:
    浅谈代理
    AFN
    网络请求
    Socket
    几种加密方式
    8种传值方式
    swift属性观察者机智
    Swift 字符串的分割
    Xcode 所有版本
    Error Domain=ALAssetsLibraryErrorDomain Code=-3310 "数据不可用" .......
  • 原文地址:https://www.cnblogs.com/Kingram/p/12627709.html
Copyright © 2011-2022 走看看