版本

从glibc 2.3开始,futimes()可用。 lutimes()自glibc 2.6起可用,并使用utimensat(2)系统调用实现,自从内核2.6.22开始受支持。

另外参见

utime(2),utimensat(2),symlink(7)

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
futimes(),lutimes()Thread safetyMT-Safe

名称

futimes,lutimes-更改文件时间戳

返回值

成功时,返回零。如果出错,则返回-1,并正确设置errno。

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

语法

#include <sys/time.h>

int futimes(int fd, const struct timeval tv[2]);

int lutimes(const char *filename, const struct timeval tv[2]);

glibc的功能测试宏要求(请参阅feature_test_macros(7)):

futimes(),lutimes():
从glibc 2.19开始:
_DEFAULT_SOURCE
Glibc 2.19及更早版本:
_BSD_SOURCE

说明

futimes()以与utimes(2)相同的方式更改文件的访问和修改时间,不同之处在于,要更改时间戳的文件是通过文件描述符fd而不是路径名指定的。

lutimes()以与utimes(2)相同的方式更改文件的访问和修改时间,不同之处在于,如果filename指向符号链接,则不会取消引用该链接:相反,符号链接的时间戳为改变了。

遵循规范

这些功能未在任何标准中指定。除Linux外,它们仅在BSD上可用。

FUTIMES - Linux手册页

Linux程序员手册 第3部分
更新日期: 2017-09-15

错误说明

错误与utimes(2)相同,但futimes()包含以下附加内容:

EBADF
fd不是有效的文件描述符。
ENOSYS
/ proc文件系统无法访问。

lutimes()可能会发生以下附加错误:

ENOSYS
内核不支持该调用。需要Linux 2.6.22或更高版本。
日期:2019-08-20 18:00:50 来源:oir作者:oir