在Go语言中,可以使用os包中的Stat和Lstat函数获取文件或目录的信息,包括所属用户和组。

示例代码如下:

package main

import (
    "fmt"
    "os"
)

func main() {
    fi, err := os.Lstat("/path/to/dir")
    if err != nil {
        fmt.Println(err)
        return
    }

    stat := fi.Sys().(*syscall.Stat_t)
    uid := stat.Uid
    gid := stat.Gid

    fmt.Printf("Directory owner: %d\n", uid)
    fmt.Printf("Directory group: %d\n", gid)
}

其中,Lstat函数返回一个FileInfo对象,通过调用其Sys方法可以获取系统相关的信息,如Unix系统中的stat结构体。需要注意的是,Sys方法返回的是一个interface{}类型的值,需要通过类型断言转换为实际的结构体类型。在Unix系统中,stat结构体中包含了uid和gid字段,分别表示文件或目录的所属用户和组

golang获取目录所属的用户和组

原文地址: http://www.cveoy.top/t/topic/dwY7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录