如何返回一级存储在变量中的目录路径

时间:2018-07-09 22:14:33

标签: go path

我正试图在Go Lang中的存储变量中返回1级,我该怎么做?

Origin:
"/root/path"

Expected:
"/root/"

有一个功能可以自动执行此操作?还是我必须手动进行?

谢谢。

1 个答案:

答案 0 :(得分:4)

父目录始终可以由..引用,因此您可以将其附加到路径中。

例如:

p := "/root/path/"
p = filepath.Clean(filepath.Join(p, ".."))
fmt.Println(p)
// "/root"

如果path本身不是目录(或者您确定它不会以路径分隔符结尾),则可以使用Dir函数来获取包含目录。 Dir 返回除路径的最后一个元素以外的所有元素,通常是路径的目录

p := "/root/path"
p = filepath.Dir(p)
fmt.Println(p)
// "/root"