Golang 获取 Linux 文件创建时间
在 Linux 环境下,可以使用 os.Stat 函数获取文件的信息,其中包含创建时间。具体实现代码如下:
package main
import (
"fmt"
"os"
"syscall"
"time"
)
func main() {
fileInfo, err := os.Stat("/path/to/file")
if err != nil {
fmt.Println(err)
return
}
stat_t := fileInfo.Sys().(*syscall.Stat_t)
birthTime := time.Unix(int64(stat_t.Ctim.Sec), int64(stat_t.Ctim.Nsec))
fmt.Println(birthTime)
}
其中,os.Stat 函数返回一个 FileInfo 对象,其中包含了文件的元信息。通过调用 FileInfo 对象的 Sys() 方法可以获取文件的系统信息,其中包含了创建时间。由于创建时间的类型为 timespec 结构体,需要对秒和纳秒进行转换,最终得到一个 time.Time 类型的创建时间。
原文地址: https://www.cveoy.top/t/topic/mlHP 著作权归作者所有。请勿转载和采集!