go 语言学习第二天

学会用go build命令 go run 命令go install 命令

1  go run 命令

go run 命令将 编译和执 行指令合二为一
会在编译之后立即执行 Go 语言程序,但是不会生成可执行文件。
2/6 go run 命令的语法格式如下:
go run fileName
其中 fileName 为所需要的参数,参数必须是同一 main 包下的所有源文件名,并且
不能为空。
比如:
go run demo.go
Hello World!
可以看到第 1 行的 go run 命令执行后,直接在第 2 行输出了程序的运行结果。
案例: hello.go 代码如下
package main
import (
"fmt"
"os"
)
func main() {
fmt.Println("args:", os.Args)
}
$go run hello.go --filename xxx.go
vim a.go
 

2. go build命令

一个文件夹( goinstall )里有一个文件( main.go )和一个文件夹( mypkg )。
一个文件夹( mypkg )里有一个文件( mypkg.go )。
main.go 代码如下:
package main
import (
"fmt"
"goinstall/mypkg"
)
func main() {
mypkg.CustomPkgFunc()
fmt.Println("hello world")
4/6 }
mypkg.go 代码如下:
package mypkg // 建议当前包名和所在目录一致
import "fmt"
func CustomPkgFunc() {
fmt.Println("call CustomPkgFunc")
}
执行以下命令将按包方式编译 goinstall 代码:
$ go build -o main goinstall
$ ls
main main.go mypkg
$ ./main
call CustomPkgFunc
hello world
如果有如下错误:
go env gopath ==>/home/test2/go
cp goinstall /home/test2/go/src/ -r
cd /home/test2/go/src
go build -o main goinstall/
./main 验证效果
vim main.go

 

vim lib.go

 

 

3.. go install 命令
命令格式: go install [ 可选参数 ]
命令作用:编译并安装源文件、软件包,即把编译后的文件 ( 可执行二进制文件 ) 安装
到指定的目录中。
特殊说明:将编译后的文件 ( 可执行二进制文件、归档文件等 ) 安装到指定的目录中。
若设置了环境变量 GOBIN ,则把二进制可执行文件移到该目录。
若禁用 Go modules 则放到 $GOPATH/pkg/$GOOS_$GOARCH 下。
go  env : 查看以下

 输入

export GO111MODULE="off"

 sudo chmod 0777 /usr/local/bin

​​​

 go install -x a.go(a是随便取的)

输出:
...
3/6 mkdir -p /Users/ucwords/go/bin/
...
mv $WORK/b001/exe/a.out /Users/ucwords/go/bin/ 目标目录 (go modules 的目
录名 )
rm -r $WORK/b001/
如果有说 GOBIN 没设置则,要用如下指令指定:
临时: export GOBIN="/usr/local/bin" # 该路径是属于 echo $PATH 中的任意目
永久:
sudo vim ~/.bashrc 在文件末尾添加如下两行数据。
export GOBIN=/usr/local/bin
保存退出 , 在终端中执行如下命令,使配置生效。
source ~/.bashrc
验证:
go env 可以查看 当前设置是否生效
直接执行,看程序效果能否出现
删除:
sudo rm /usr/local/bin/a

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值