📅  最后修改于: 2023-12-03 14:52:18.353000             🧑  作者: Mango
在 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 中获取当前工作目录的两种方法。