在 Golang 中,可以使用命令行参数或环境变量来从外部传递参数。
可以使用 os.Args
来获取命令行参数。os.Args
是一个字符串切片,其中第一个参数是可执行文件的路径,之后的参数是传递给程序的参数。
例如,下面的代码会输出所有的命令行参数:
package main
import (
"fmt"
"os"
)
func main() {
args := os.Args[1:] // 获取除了可执行文件路径之外的所有参数
for _, arg := range args {
fmt.Println(arg)
}
}
假设将上述代码保存为 main.go
,然后在命令行中运行:
go run main.go arg1 arg2 arg3
会输出:
arg1
arg2
arg3
可以使用 os.Getenv
函数来获取环境变量的值。这个函数接受一个环境变量的名称作为参数,并返回对应的值。
例如,下面的代码会输出 MY_VAR
环境变量的值:
package main
import (
"fmt"
"os"
)
func main() {
value := os.Getenv("MY_VAR")
fmt.Println(value)
}
假设将上述代码保存为 main.go
,然后设置一个名为 MY_VAR
的环境变量,并在命令行中运行:
export MY_VAR=myvalue
go run main.go
会输出:
myvalue
以上就是在 Golang 中从外部传递参数的两种常见方法。