12.3 go run命令 - Go语言中文社区

12.3 go run命令


Python 或者 Lua 语言可以在不输出二进制的情况下,将代码使用虚拟机直接执行。Go语言虽然不使用虚拟机,但可使用go run指令达到同样的效果。

go run命令会编译源码,并且直接执行源码的 main()函数,不会在当前目录留下可执行文件。

下面我们准备一个 main.go 的文件来观察go run的运行结果,源码如下:

  1. package main
  2. import (
  3. "fmt"
  4. "os"
  5. )
  6. func main() {
  7. fmt.Println("args:", os.Args)
  8. }

这段代码的功能是将输入的参数打印出来。使用go run运行这个源码文件,命令如下:

  1. $ go run main.go --filename xxx.go
  2. args: [/tmp/go-build006874658/command-line-arguments/_obj/exe/main--filename xxx.go]

go run不会在运行目录下生成任何文件,可执行文件被放在临时文件中被执行,工作目录被设置为当前目录。在go run的后部可以添加参数,这部分参数会作为代码可以接受的命令行输入提供给程序。

go run不能使用“go run+包”的方式进行编译,如需快速编译运行包,需要使用如下步骤来代替:

  • 使用go build生成可执行文件。
  • 运行可执行文件。
版权声明:本教程内容除了本站原创内容外,还有来源自C语言编程网,博客园,CSDN等技术站点,感谢相关博主原创文章,转载请附上原文出处链接和本声明。
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 阅读 ( 612 )
  • 分类:Go

0 条评论

官方社群

GO教程

猜你喜欢