C 在Linux中,如何检测符号链接目录中的一个文件何时被修改

C 在Linux中,如何检测符号链接目录中的一个文件何时被修改,c,linux,C,Linux,我有一个指向这样一个目录的符号链接 root@beaglebone:/sys/class/drm# lrwxrwxrwx 1 root root 0 Sat Jan 1 00:00:01 2000 card0-HDMI-A-1 -> /sys/devices/ocp.3/4830e000.lcdc/drm/card0/card0-HDMI-A-1 当符号链接/sys/class/drm/card0-HDMI-A-1指向的实际路径/sys/devices/ocp.3/4830e00

我有一个指向这样一个目录的符号链接

root@beaglebone:/sys/class/drm#    
lrwxrwxrwx 1 root root 0 Sat Jan 1 00:00:01 2000 card0-HDMI-A-1 -> /sys/devices/ocp.3/4830e000.lcdc/drm/card0/card0-HDMI-A-1
当符号链接/sys/class/drm/card0-HDMI-A-1指向的实际路径/sys/devices/ocp.3/4830e000.lcdc/drm/card0/card0-HDMI-A-1中的一个文件被修改时,如何检测/监视

我更喜欢用C程序来做这件事


非常感谢。

您正在查找的命令是。stat在*nix中检索关于文件的数据,目录是一种文件。在符号链接上使用时,stat将返回链接指向的数据,而不是链接本身。stat填充struct stat,其st_mtime成员是最后一次修改的时间,对于目录,它将在其内容更改时更新

struct stat file_info;

if ( stat ( "/sys/class/drm/card0-HDMI-A-1", &file_info ) == 0 ) {
  /* stat succeeded, file_info.st_mtime is the real directory's mod time */
} else {
  /* stat failed for some reason. consult the man page for info about error codes */
}

。在观看符号链接时,inotify似乎不起作用,谢谢。inotify对符号链接起作用。如果你不能让它工作,请张贴你正在尝试的代码。谢谢你的帮助,阿兰欧。Inotify在sym-link上工作。我将重新检查我的程序。