小编典典

获取用户的祝目录

go

以下是获取正在运行的用户主目录的最佳方式吗?或者是否有我看过的特定功能?

os.Getenv("HOME")

如果以上是正确的,有没有人碰巧知道这种方法是否可以保证在非 Linux 平台上工作,例如 Windows?


阅读 317

收藏
2021-12-01

共1个答案

小编典典

从 go 1.12 开始,推荐的方法是:

package main
import (
    "os"
    "fmt"
    "log"
)
func main() {
    dirname, err := os.UserHomeDir()
    if err != nil {
        log.Fatal( err )
    }
    fmt.Println( dirname )
}

旧推荐:

在 go 1.0.3(也可能更早)中,以下工作:

package main
import (
    "os/user"
    "fmt"
    "log"
)
func main() {
    usr, err := user.Current()
    if err != nil {
        log.Fatal( err )
    }
    fmt.Println( usr.HomeDir )
}
2021-12-01