golang os.Args

作者: adm 分类: go 发布时间: 2023-06-15

os.Args
获取运行时的参数,是一个切片Slice,第一个值是当前可运行文件的绝对路径

import (
    "os"
    "fmt"
)

func main() {
 
        cmds := os.Args
 
        for i, cmd := range cmds {
                fmt.Printf("cmd[%d] = %s \n", i, cmd)
        }
}

在命令行运行 go run test.go,输出结果如下

cmd[0] = C:\Users\ADMINI~1\AppData\Local\Temp\go-build142125990\b001\exe\test.exe

然后我们运行 go run test.go hello world,输出结果如下

cmd[0] = C:\Users\ADMINI~1\AppData\Local\Temp\go-build052083198\b001\exe\test.exe
cmd[1] = hello
cmd[2] = world

参考:301-golang之命令行参数os.Args

应用场景
1、结合 path/filepath 包,获取当前可运行文件的路径

dir, err := filepath.Abs(filepath.Dir(os.Args[0]))

2、启动时给程序传参

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!