gpt4 book ai didi

c - 使用stat获取最近修改的目录

转载 作者:行者123 更新时间:2023-11-30 16:50:34 26 4
gpt4 key购买 nike

事实证明,这是极其困难的。我想使用 stat 来获取最近修改的目录的名称。我对 stat 研究了很多,但老实说,我不太明白如何使用它,所以我没有任何代码可以展示。

如何使用 stat 获取 C 语言中最近修改的目录?

最佳答案

我假设您熟悉列出给定目录中的所有文件(并提取目录)[如果没有在 opendir/readdir 上读取]。该算法将不准确,因为目录可能会在其时间戳之后被触及已检查,但假设这不是问题,您可能会执行以下操作

    DIR *dirp = opendir(".");
struct stat dStat;
time_t latest = 0;
while ((dp = readdir(dirp)) != NULL) {
memset(&dStat, 0, sizeof(dStat));
if (stat(dp->d_name, &dStat) < 0) {
printf("Error getting info on file\n");
continue;
}
// If not a directory skip
if ((dStat.st_mode & S_IFDIR) != S_IFDIR) {
continue;
}
// check with the latest timestamp
if (dStat.st_mtime > latest) {
// On finding a more recent file switch that to latest
strcpy(dName, dp->d_name);
latest = fStat.st_mtime;
}
}
closedir(dirp);
printf("Most recently touched directory %s\n", dName);

关于c - 使用stat获取最近修改的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42170824/

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