gpt4 book ai didi

c - 如何检测 Linux 中符号链接(symbolic link)目录中的一个文件是否被修改

转载 作者:行者123 更新时间:2023-11-30 17:12:56 24 4
gpt4 key购买 nike

我有一个指向这样一个目录的符号链接(symbolic link)

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

当符号链接(symbolic link) (/sys/class/drm/card0-HDMI-A-1) 指向。

(我更喜欢使用 C 程序来执行此操作)。

非常感谢。

最佳答案

您正在寻找的命令是 statstat 检索有关文件的数据(在 *nix 中,目录是一种文件)。当在符号链接(symbolic link)上使用时,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 */
}

关于c - 如何检测 Linux 中符号链接(symbolic link)目录中的一个文件是否被修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31173723/

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