window 下 go lang 环境变量一键批处理设置

简介: 目的,就是为了我这种贼懒得人用的 作者:风来了.呆狐狸 使用的是GO lang ZIP压缩包安装 ,可以自动设置环境变量 GO lang下载地址:http://www.golangtc.com/download 使用方法 保存为 go.bat 放到go 目录内,执行go.bat即可,其中GOARCH 要根据自己系统位数设置,这边是64位系统 原理:setx 设置用户环境变量

目的,就是为了我这种贼懒得人用的

作者:风来了.呆狐狸

使用的是GO lang ZIP压缩包安装 ,可以自动设置环境变量

GO lang下载地址:http://www.golangtc.com/download

使用方法

保存为 go.bat 放到go 目录内,执行go.bat即可,其中GOARCH 要根据自己系统位数设置,这边是64位系统

原理:setx 设置用户环境变量

系统:win7及以上版本可用,winXP不可以使用

目录格式

E:\go
E:\go\go         #go.bat文件存放目录,该目录就是GO lang ZIP 压缩包解压缩后的目录
E:\go\GOPATH
E:\go\Dev
        

精简版

@ECHO OFF 
IF EXIST %CD%\bin\go.exe ( 
IF EXIST %systemroot%\system32\setx.exe ( 
rem 处理器架构 386/amd64/arm
@SETX GOARCH amd64

rem 操作系统 darwin/freebsd/linux/windows
@SETX GOOS windows

rem Go 在你的电脑上的安装位置
@SETX GOROOT %CD%

rem 编译器和链接器的安装位置,默认是 $GOROOT/bin,一般情况下你可以将它的值设置为空,Go 将会使用前面提到的默认值
@SETX GOBIN %CD%\bin

rem 默认采用和 $GOROOT 一样的值,但从 Go 1.1 版本开始,你必须修改为其它路径。它可以包含多个包含 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:src,pkg 和 bin,这三个目录分别用于存放源码文件、包文件和可执行文件
@SETX GOPATH %CD:~0,-3%\GOPATH

REM sex 默认设置用户环境变量,加/M设置系统环境变量
REM 例如 SETX /M PATH_HOME ";%GO_BIN%;" 设置系统环境变量
@SETX PATH ";%CD%\bin;"
echo.
echo.
echo.
echo.
echo.
ECHO    设置成功!
echo.
echo.
echo.
echo.
echo.
) ELSE ( 
@ECHO ON 
@ECHO 未能找到%systemroot%\system32\setx.exe,请下载setx.exe程序 
) 
) ELSE ( 
@ECHO ON 
@ECHO GO安装目录不正确,未能按照预期计划执行
) 
@PAUSE 


完整版:

@ECHO OFF 
IF EXIST %CD%\bin\go.exe ( 
IF EXIST %systemroot%\system32\setx.exe ( 
rem 处理器架构 386/amd64/arm
@SETX GOARCH amd64
rem 操作系统 darwin/freebsd/linux/windows
@SETX GOOS windows
rem Go 在你的电脑上的安装位置
@SETX GOROOT %CD%
rem 编译器和链接器的安装位置,默认是 $GOROOT/bin,一般情况下你可以将它的值设置为空,Go 将会使用前面提到的默认值
@SETX GOBIN %CD%\bin
rem 默认采用和 $GOROOT 一样的值,但从 Go 1.1 版本开始,你必须修改为其它路径。它可以包含多个包含 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:src,pkg 和 bin,这三个目录分别用于存放源码文件、包文件和可执行文件
::$GOPATH
rem $GOARM 专门针对基于 arm 架构的处理器,它的值可以是 5 或 6,默认为 6
::$GOARM
rem $GOMAXPROCS 用于设置应用程序可使用的处理器个数与核数
::$GOMAXPROCS
@SETX PATH ";%CD%\bin;" 
REM sex 默认设置用户环境变量,加/M设置系统环境变量
REM 例如 SETX /M PATH_HOME ";%GOBIN%;" 设置系统环境变量
ECHO "ok"
) ELSE ( 
@ECHO ON 
@ECHO 未能找到%systemroot%\system32\setx.exe,请下载setx.exe程序 
) 
) ELSE ( 
@ECHO ON 
@ECHO GO安装目录不正确,未能按照预期计划执行 
) 
@PAUSE 


目录
相关文章
|
10月前
|
Kubernetes Linux Go
使用 Uber automaxprocs 正确设置 Go 程序线程数
`automaxprocs` 包就是专门用来解决此问题的,并且用法非常简单,只需要使用匿名导入的方式 `import _ "go.uber.org/automaxprocs"` 一行代码即可搞定。
437 78
|
消息中间件 Shell Go
GoLang 环境变量与配置
编程语言中的环境变量和配置管理是关键,Go 项目中配置文件不被打包,需通过环境变量解耦代码。
462 0
|
Go Windows
win10 golang下载安装,及环境变量配置
鄙人之前是使用mac做golang开发的,后来换了台图形工作站,用了windows的系统,因此只得从头下载golang安装,及进行环境变量的配置。比较方便的一点是,之前在mac osx上码的golang代码不用再敲上一遍了,因为golang可以跨平台运行,可以直接从mac上的golang代码复制到windows系统上即可。
275 1
|
安全 网络协议 Go
GO 中如何设置 HTTPS 分享
GO 中如何设置 HTTPS 分享
175 0
|
Go 开发工具 git
vscode设置go环境
vscode设置go环境
869 0
|
Go Python 容器
因势而变,因时而动,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang泛型(generic)的使用EP15
事实上,泛型才是Go lang1.18最具特色的所在,但为什么我们一定要拖到后面才去探讨泛型?类比的话,我们可以想象一下给小学一年级的学生讲王勃的千古名篇《滕王阁序》,小学生有多大的概率可以理解作者的青云之志以及壮志难酬的愤懑心情?恐怕很难罢,是的,如果对Go lang的强类型语法没有一段时间的体验期,就很难理解泛型这种“反”静态语言概念。
因势而变,因时而动,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang泛型(generic)的使用EP15
|
Go 调度 Python
大道如青天,协程来通信,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang通道channel的使用EP14
众所周知,Go lang的作用域相对严格,数据之间的通信往往要依靠参数的传递,但如果想在多个协程任务中间做数据通信,就需要通道(channel)的参与,我们可以把数据封装成一个对象,然后把这个对象的指针传入某个通道变量中,另外一个协程从这个通道中读出变量的指针,并处理其指向的内存对象。
大道如青天,协程来通信,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang通道channel的使用EP14
|
Go 调度 开发者
并发与并行,同步和异步,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang并发编程之GoroutineEP13
如果说Go lang是静态语言中的皇冠,那么,Goroutine就是并发编程方式中的钻石。Goroutine是Go语言设计体系中最核心的精华,它非常轻量,一个 Goroutine 只占几 KB,并且这几 KB 就足够 Goroutine 运行完,这就能在有限的内存空间内支持大量 Goroutine协程任务,方寸之间,运筹帷幄,用极少的成本获取最高的效率,支持了更多的并发,毫无疑问,Goroutine是比Python的协程原理事件循环更高级的并发异步编程方式。
并发与并行,同步和异步,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang并发编程之GoroutineEP13
|
SQL 缓存 Kubernetes
百亿数据百亿花, 库若恒河沙复沙,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang数据库操作实践EP12
Golang可以通过Gorm包来操作数据库,所谓ORM,即Object Relational Mapping(数据关系映射),说白了就是通过模式化的语法来操作数据库的行对象或者表对象,对比相对灵活繁复的SQL语句,ORM上手简单,通用性较高,但是在性能层面略有损耗,Gorm的底层是结构体对象,关于结构体,请移玉步至:[你有对象类,我有结构体,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang结构体(struct)的使用EP06](https://v3u.cn/a_id_229)。
百亿数据百亿花, 库若恒河沙复沙,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang数据库操作实践EP12
|
存储 搜索推荐 网络协议
人非圣贤孰能无过,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang错误处理机制EP11
人非圣贤,孰能无过,有则改之,无则加勉。在编程语言层面,错误处理方式大体上有两大流派,分别是以Python为代表的异常捕获机制(try....catch);以及以Go lang为代表的错误返回机制(return error),前者是自动化流程,模式化的语法隔离正常逻辑和错误逻辑,而后者,需要将错误处理判断编排在正常逻辑中。虽然模式化语法更容易让人理解,但从系统资源开销角度看,错误返回机制明显更具优势。
人非圣贤孰能无过,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang错误处理机制EP11