2016-01-20 17 views
-1

我正在编写一个使用nftw()的C程序来遍历文件系统并检索每个文件的文件修改时间。如何找到struct timespec的开发信息

nftw()调用提供的函数指针并提供一个作为参数的struct stat

man stat(2)指出,修改时间的字段有:

struct timespec st_atim; /* time of last access */ 
struct timespec st_mtim; /* time of last modification */ 
struct timespec st_ctim; /* time of last status change */ 

然而,尽管man stat(2)提供了如何打印时间区域的例子,它并没有告诉我如何找到有关struct timespec,也没怎么查询/操作时间修改字段。

我应该如何在没有诉诸Google的情况下单独在我的电脑上查找信息?

回答

1

通常其中一个手册页描述了这些结构包含的内容。如果您告诉我们您的平台,我可以提供更多详细信息。否则,请打开标题/usr/include/time.h以查看struct timespec的定义。

+0

我正在运行Ubuntu 15.10 64bit。 – retrodev

+0

我猜你知道要从经验中打开time.h。手册页不会引用该标题。我怎么能自己得出这个结论? – retrodev

+0

@retrodev [POSIX指定](http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html)这是声明'struct timespec'的地方。 – fuz

0
$ apropos timespec 
clock_gettime  (2) - Return the current timespec value of tp for the specified clock 
$ man 2 clock_gettime 
+0

在我的系统上,第一个查询的答案是“timespec:没有任何适当的。”我应该返回我的系统吗? – fuz

+0

不可以。你应该使用谷歌,或者如果你真的不想,你可以grep你的包含路径。但你为什么? –

+0

我也得到“timespec:没有任何适当的”。 – retrodev

0

通常,当我需要的数据类型或功能的信息,如不包括在该名男子的网页,我发出如下命令:

grep -r "timespec" /usr/include/

在哪里都是在头文件的路径