使用utimes或futimes分别设置访问时间和修改时间

时间:2011-06-23 23:38:00

标签: c linux api

如何以忽略第一次或第二次数组参数的方式调用utimes或futimes。

即。

int utimes(const char *filename, const struct timeval times[2]);

struct timeval {
    long tv_sec;        /* seconds */
    long tv_usec;       /* microseconds */
};

我记得有一段时间后想出这个。您必须将tv_sec设置为特殊值才能使其忽略该参数。任何人都可以回想起或知道我是怎么做到的吗?

1 个答案:

答案 0 :(得分:5)

{@ 1}}界面已弃用,我不知道它是否提供了一种方法来执行您想要的操作。标准化程度很低,平台之间的答案可能不同。相反,您应该使用utimesutimensat

http://pubs.opengroup.org/onlinepubs/9699919799/functions/utimensat.html

具有特殊值futimens