📌  相关文章
📜  如何在 Golang 中获取当前工作目录?(1)

📅  最后修改于: 2023-12-03 14:52:18.353000             🧑  作者: Mango

如何在 Golang 中获取当前工作目录?

在 Golang 中,获取当前工作目录是一个非常简单的任务。可以使用标准库中的 os 包来获取当前工作目录。

方法一: os.Getwd()

os.Getwd() 函数返回当前工作目录的路径作为一个字符串。

import (
    "os"
    "fmt"
)

func main() {
    wd, err := os.Getwd()
    if err != nil {
        fmt.Println("Error:", err)
    }
    fmt.Println(wd)
}

返回的结果是当前工作目录的绝对路径。

方法二: os.Executable()filepath.Dir()

另一种方法是使用 os.Executable() 函数来获取二进制文件的路径,然后使用 filepath.Dir() 函数来获取当前工作目录的路径。

import (
    "os"
    "path/filepath"
    "fmt"
)

func main() {
    exePath, err := os.Executable()
    if err != nil {
        fmt.Println("Error:", err)
    }

    wd := filepath.Dir(exePath)
    fmt.Println(wd)
}

这种方法返回的是二进制文件所在的路径,但通常情况下,二进制文件所在的路径与当前工作目录相同。如果不是相同的,这种方式将不会返回正确的结果。

以上就是在 Golang 中获取当前工作目录的两种方法。