go run 用于编译并运行源码文件,由于包含编译步骤,所以 go build 参数都可用于 go run ,在 go run 中只接受go源码文件 而不接受 代码包。

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

go run softool.go

go run .

在 Go 语言中,go run . 是一个特殊的用法,它表示编译并运行当前目录中的所有 Go 源文件。

. 表示当前目录,go run . 命令会将当前目录中的所有 Go 源文件作为参数传递给 go run 命令,然后编译并运行这些源文件。

例子:

例如,假设当前目录中有两个 Go 源文件:main.goutils.go。如果执行以下命令:

go run . start

注意:
start 是一个参数,它会被传递给正在运行的 Go 程序。具体来说,start 是一个字符串参数,在程序中可以通过 os.Args 获取到。

那么 go run . 命令会编译并运行当前目录中的所有 Go 源文件,相当于执行以下命令:

go run main.go utils.go

同时,start 参数会被传递给运行的 Go 程序。在程序中,可以通过 os.Args 获取到参数,并进行相应的处理。

需要注意的是,. 表示当前目录中的所有 Go 源文件,因此在执行 go run . 命令时,需要确保当前目录中只包含需要编译和运行的 Go 源文件,以避免不必要的编译错误或运行错误。


作者:ChatGPT