【问题标题】:How to get the path of the final final point by a symbolic link using `stat`如何使用`stat`通过符号链接获取最终点的路径
【发布时间】:2017-02-22 12:13:09
【问题描述】:

我尝试获取符号链接指向的文件夹/文件的名称。

例如,当您执行ls -l 你可以得到这个结果

-rw-r--r--  1 macos  staff  0 Feb 22 12:05 test
lrwxr-xr-x  1 macos  staff  7 Feb 19 11:05 sl -> test

如果我知道 sl 的路径来获取它指向的文件/文件夹,我该怎么办?

如果可能的话,我想使用stat

有什么建议吗?

【问题讨论】:

  • 为什么lstat 显然不适合使用时,你会使用它吗?为什么不使用stat,它跟随链接?
  • 其实是因为我搞糊涂了!我认为lstat 关注链接,stat 不是!
  • 无论如何,要获取您使用 readlink 的路径,任何 stat 函数都不会返回它
  • 谢谢,我会尝试在网上搜索一下它是如何工作的
  • The manual page 通常是一个不错的起点。

标签: c ls


【解决方案1】:

总结一下:

使用lstatstat 无法获取符号链接指向的文件/文件夹的名称。

函数 readlink 可以完成这项工作 => Man : http://man7.org/linux/man-pages/man2/readlink.2.html。您将在 man 中获得示例

谢谢你帮我解决了我的问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 2023-03-17
    相关资源
    最近更新 更多