最近有几个需要刷数据的任务,单独写接口,太麻烦,还要走发版流程,简单粗暴一些,就直接写脚本,大佬们 review 一下,跳板机上直接运行了。(review 代码、审核等正常研发流程,还是要走呀,不可以太直接粗暴。)
go
不像 java
等运行于JVM
之上的语言,也不像 php
、python
等解释性语言,go
语言可打包成目标平台二进制文件是其一大优势,因此,go
项目在服务器不需要配置go环境和依赖就可跑起来。
先使用go env
看看mac上返回的结果,抛弃一些暂时不重要的结果,我们只看这些:
bash
1 | GOARCH="amd64" |
*CGO_ENABLED
表示不使用cgo
*GOOS
表示目标平台系统(Windows,linux,darwin「mac os」等等)
*GOARCH
表示目标系统架构(arm arm64 386 amd64 等等)
接下来,就可以编译成Linux下可执行文件
bash
1 | CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build |
编译成Windows下可执行文件
bash
1 | CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build |
当然,我当时是写了多个脚本文件,都分别编译,那就 go bulid
后指明文件即可。