SET CGO_ENABLED=0
set GOARCH=amd64
set GOOS=linux
// 开始编译
go build -o ./build/ ./main.go
在windows10之前的系统版本上使用cmd命令行可以使用上述命令编译
在powershell命令行中编译(示例编译64位linux程序)
// 设置Linux编译环境
$env:CGO_ENABLED="0"
$env:GOOS="linux"
$env:GOARCH="amd64"
// 开始编译
go build -o ./build/ ./main.go
作用:
用于标识(声明) cgo 工具是否可用
意义:
存在交叉编译的情况时,cgo 工具是不可用的。在标准 go 命令的上下文环境中,交叉编译意味着程序构建环境的目标计算架构的标识与程序运行环境的目标计算架构的标识不同,或者程序构建环境的目标操作系统的标识与程序运行环境的目标操作系统的标识不同
关闭 cgo 后,在构建过程中会忽略 cgo 并静态链接所有的依赖库,而开启 cgo 后,方式将转为动态链接
用于标识(声明)程序构建环境的目标操作系统
如:linux 、windows
用于标识(声明)程序构建环境的目标计算架构,若不设置,默认值与程序运行环境的目标计算架构一致
系统 | GOOS | GOARCH |
---|---|---|
Windows 32 位 | windows | 386 |
Windows 64 位 | windows | amd64 |
OS X 32 位 | darwin | 386 |
OS X 64 位 | darwin | amd64 |
Linux 32 位 | linux | 386 |
Linux 64 位 | linux | amd64 |
用于标识(声明)程序运行环境的目标操作系统
用于标识(声明)程序运行环境的目标计算架构
-a
强制重新编译,简单来说,就是不利用缓存或已编译好的部分文件,直接所有包都是最新的代码重新编译和关联
-installsuffix
作用:在软件包安装的目录中增加后缀标识,以保持输出与默认版本分开
补充:如果使用 -race 标识,则后缀就会默认设置为 -race 标识,用于区别 race 和普通的版本
-o
指定编译后的可执行文件名称
//修改权限命令
chmod 777 程序名称
//后台运行的命令
nohup ./程序名 &
//不输出错误信息
nohup ./程序名 >/dev/null 2>&1 &
//如果要关闭程序,可以使用命令”ps” 查看后台程序的pid,然后使用“kill 程序pid”命令,关闭程序比如程序名为test,可以用如下命令查询
ps aux|grep test
//关掉进程
kill 进程编号
//开机启动glang
vi /etc/rc.local
cd gopath
nohup ./main &
3 . 退出状态:该命令返回下列出口值:
用途:在后台运行
一般两个一起用
nohup command &
nohup redis-server ./main >/dev/null 2>&1 &
查看运行的后台进程
(1)jobs -l
(2)ps -ef
ps -aux|grep test.js
a
: 显示所有程序u
: 以用户为主的格式来显示x
: 显示所有程序,不以终端机来区分windows 上面用
go build -ldflags "-s -w -H=windowsgui"
curl发送参数名字username 和pwd 是页面定义的两个参数名字,form1 是页面定义的表单的名字。
curl -d "username=test&pwd=123456" http://serverIP/webAuth/index.htm/form1
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8