当前位置: 首页 > news >正文

go env 命令详解

文章目录

  • 1.简介
  • 2.格式
  • 3.示例
  • 4.环境变量
  • 参考文献

1.简介

go env 用于查看和设置 Go 环境变量。

默认情况下 go env 输出格式为 Shell 脚本格式(如 Windows 上是 batch 文件格式)。如果指定变量名称,则只输出变量的值。

2.格式

go env [-json] [-u] [-w] [var ...]

其中 -json 表示以 JSON 格式输出而不是 Shell 脚本格式。

-u 表示 unset,取消环境变量。

-w 表示 write,设置环境变量。

3.示例

(1)查看 Go 所有环境变量。

#  Linux 环境查看 Go 所有环境变量
go env
GOARCH="amd64"
GOBIN="/data/home/go_proj/going_proj/bin"
GOCACHE="/home/dablelv/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/dablelv:/data/home/go_proj/going_proj"
GORACE=""
GOROOT="/usr/local/go"
...# Windows 环境查看 Go 所有环境变量
go env
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\dablelv\AppData\Local\go-build
set GOENV=C:\Users\dablelv\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
...

(2)查看指定环境变量

go env NAME

(3)以 JSON 格式显示指定环境变量。

go env -json GOROOT
{"GOROOT": "C:\\Users\\dablelv\\.go\\1.22.1\\go"
}

(4)删除环境变量。

go env -u NAME

(5)设置环境变量

go env -w NAME=VALUE

(6)查看 go env 的帮助信息。

go help env
usage: go env [-json] [-u] [-w] [var ...]Env prints Go environment information.By default env prints information as a shell script
(on Windows, a batch file). If one or more variable
names is given as arguments, env prints the value of
each named variable on its own line.The -json flag prints the environment in JSON format
instead of as a shell script.The -u flag requires one or more arguments and unsets
the default setting for the named environment variables,
if one has been set with 'go env -w'.The -w flag requires one or more arguments of the
form NAME=VALUE and changes the default settings
of the named environment variables to the given values.For more about environment variables, see 'go help environment'.

4.环境变量

Go 环境变量是一些配置信息,可以影响 Go 程序的依赖管理、编译构建和运行环境和等方面。

常见环境变量有:

变量含义
GOROOTgo 语言安装时所在的目录绝对路径
GOPATH工作区所在的绝对目录
GOVERSION安装的 Go 版本
GOENVGo 环境变量配置文件的位置。不能使用 ‘go env -w’ 设置。若设置 GOENV=off 将禁用默认配置文件的使用。
GOOS编译代码的操作系统名称(比如 linux,windows,darwin 等)
GOARCH计算机处理器的架构(比如 amd64,386,arm 等)
GOPROXYGo Modules 的代理地址(URL),用于加速下载 Go 模块
GOSUMDB要使用的校验和数据库的名称以及可选的公钥和URL。详见 https://golang.org/ref/mod#authenticating
GOPRIVATE, GONOPROXY, GONOSUMDB以 glob 模式表示的模块路径,多个使用逗号分隔。这些模式应该总是直接获取,不走代理拉去,且不参与校验。详见 https://golang.org/ref/mod#private-modules
GOCACHE存储编译后信息的缓存目录
GODEBUG启用各种调试工具。详见https://go.dev/doc/godebug。
GO111MODULE用于控制 Go Modules 的行为,可以设置为 on、off 或 auto。如果设置为 on,则 Go Modules 模式将被启用;如果设置为 off,则禁用 Go Modules 模式;如果设置为 auto,则根据当前目录下是否存在 go.mod 文件来判断是否启用 Go Modules 模式。在 Go 1.13 中,GO111MODULE 的默认值为 auto,即自动启用 Go Modules 模式。这意味着,如果在项目目录下存在 go.mod 文件,则会自动启用 Go Modules 模式,否则会使用传统的 GOPATH 模式。
GOINSECURE表示以 glob 模式表示的模块路径,多个使用逗号分隔。支持以不安全的 HTTP 连接下载模块
GOMAXPROCS用于控制 Go 程序中可同时执行的最大 CPU 数量。默认值为 CPU 核心数量。可以通过设置 GOMAXPROCS 的值来提高程序的并发性能。

以上仅部分环境变量,查看所有 Go 环境变量可使用命令:go help environment


参考文献

Command Documentation
About the go command
go command - cmd/go

相关文章:

  • TouchGFX之Button
  • JavaEE企业级分布式高级架构师课程
  • python知识点总结(十)
  • Chrome 插件 storage API 解析
  • 类的定义与实例化
  • AI大模型学习:AI大模型在特定领域的应用
  • 华为OD七日集训第5期 - 按算法分类,由易到难,循序渐进,玩转OD
  • 工业无线网关在汽车制造企业的应用效果和价值-天拓四方
  • C# 多态 派生类 abstract virtual new
  • JSP基础
  • 登录拦截器
  • unity无法使用道路生成插件Road Architect(ctrl和shift无法标点)
  • SAP_MMQM模块-采购收货质量控制
  • 【八股】泛型
  • 深度学习pytorch——激活函数损失函数(持续更新)
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • 10个最佳ES6特性 ES7与ES8的特性
  • canvas 绘制双线技巧
  • Codepen 每日精选(2018-3-25)
  • leetcode46 Permutation 排列组合
  • Linux链接文件
  • Nodejs和JavaWeb协助开发
  • PAT A1092
  • SQL 难点解决:记录的引用
  • webpack+react项目初体验——记录我的webpack环境配置
  • 不上全站https的网站你们就等着被恶心死吧
  • 和 || 运算
  • 解析 Webpack中import、require、按需加载的执行过程
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 前端性能优化——回流与重绘
  • 区块链技术特点之去中心化特性
  • 我从编程教室毕业
  • 我建了一个叫Hello World的项目
  • 正则与JS中的正则
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • (vue)页面文件上传获取:action地址
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (十八)SpringBoot之发送QQ邮件
  • (四)图像的%2线性拉伸
  • (译)2019年前端性能优化清单 — 下篇
  • (转)iOS字体
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .NET 的静态构造函数是否线程安全?答案是肯定的!
  • .NET 读取 JSON格式的数据
  • .NET 发展历程
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • .NET使用存储过程实现对数据库的增删改查
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • .Net转前端开发-启航篇,如何定制博客园主题
  • .stream().map与.stream().flatMap的使用
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...