[英]How to run Go(lang) code directly from terminal/command line?
我想直接从终端/命令行运行简单的 go 代码。 例如:
go run "
package main
func main() {
println("hello")
}
"
hello
但是 golang 只允许从文件执行代码。 那么也许有一些方法可以模拟它? 像这样:
go run file.go < echo "...."
但是在上述操作之后应该没有文件。
在命令行中,只有像go-repl这样的项目才能编译/运行多行 go 源代码,而不会留下任何.go
文件。
另一种选择:戈尔:
$ gore
Enter one or more lines and hit ctrl-D
func test() string {return "hello"}
println(test())
^D
---------------------------------
hello
(其他类似 repl 的解决方案在“ Go 是否提供 REPL? ”中列出)
或者你需要开发一个 go 包装器,它会在内部创建一个源代码并在删除它之前运行它。
Ubuntu 有一个gorun
工具,它适用于小脚本。 它动态编译脚本,将二进制文件缓存在 /tmp 中。
尽管它是用于编写脚本而不是用作 REPL,但您可以通过多种方式使用它。
尽管gorun
来自 Ubuntu 社区,但它应该适用于任何 Linux 发行版,因为它通过以下方式使用 vanilla Go 源代码
$ go get launchpad.net/gorun
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.