Go语言中可以使用os.Stat()函数获取文件的基本信息,包括文件的创建时间、修改时间、访问时间等。但是在Linux系统中,文件的创建时间并不是一个标准的属性,因此无法直接通过os.Stat()函数获取。不过,可以通过调用Linux系统的特定命令获取文件的创建时间,例如使用stat命令。

下面是一个示例代码,演示如何使用os/exec包执行外部命令获取文件的创建时间:

package main

import (
    "fmt"
    "os/exec"
    "strings"
)

func main() {
    // 文件路径
    filePath := "/path/to/file"
    
    // 执行stat命令获取文件信息
    cmd := exec.Command("stat", "-c", "%w", filePath)
    output, err := cmd.Output()
    if err != nil {
        fmt.Println("获取文件创建时间失败:", err)
        return
    }
    
    // 解析输出结果,获取文件创建时间
    createTime := strings.TrimSpace(string(output))
    fmt.Println("文件创建时间:", createTime)
}

这段代码中,首先使用os/exec包创建一个exec.Cmd对象,表示要执行的命令。该命令是“stat -c "%w" 文件路径”,其中“-c”选项用于指定输出格式,"%w"表示输出文件的创建时间。接着调用Cmd对象的Output()方法执行命令,并获取输出结果和错误信息。

最后,使用strings.TrimSpace()函数去除输出结果中的空格和换行符,得到文件的创建时间。

golang获取linux文件创建时间库

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

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