gpt4 book ai didi

Go:如何遍历文件并将 ModTime 与日期进行比较?

转载 作者:IT王子 更新时间:2023-10-29 01:51:24 24 4
gpt4 key购买 nike

我正在尝试遍历目录中的文件并将它们的 ModTime 与特定日期进行比较,以便删除旧文件。

我正在使用 ioutil.ReadDir() 来获取文件,但我对如何检索每个文件的 ModTime 感到困惑。

谢谢

最佳答案

ioutil.ReadDir 的返回值是([]os.FileInfo, error)。您只需迭代 []os.FileInfo slice 并检查每个 slice 的 ModTime()ModTime() 返回一个 time.Time,因此您可以以任何您认为合适的方式进行比较。

package main

import (
"fmt"
"io/ioutil"
"log"
"time"
)

var cutoff = 1 * time.Hour

func main() {
fileInfo, err := ioutil.ReadDir("/tmp")
if err != nil {
log.Fatal(err.Error())
}
now := time.Now()
for _, info := range fileInfo {
if diff := now.Sub(info.ModTime()); diff > cutoff {
fmt.Printf("Deleting %s which is %s old\n", info.Name(), diff)
}
}
}

关于Go:如何遍历文件并将 ModTime 与日期进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28681777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com