[Linux]如何列出「被软链接」的文件(甚至列出「被链接数目」「被链接位置」)?

比如一个目录A下有若干文件,若干文件「被软链接了」,想要了解这些文件「被软链接」的详细情况.

看了一下ls的帮助,没有想出个所以然来. :)

阅读 11.2k
2 个回答

这个直接搞应该不行,毕竟软连接类似于 windows 的快捷方式,相当于一个指针,指向 被软链接了的文件,而被软链接了 的文件并不包含软连接文件的信息,就像 hash,你能知道一个文件 hash 后的值,但无法根据 hash 值确定文件。

所以思路只能反过来,不过这样一来你就要遍历整个系统的目录。。。不知道有没有现成的工具可以做这个事情。


PS: 可以考虑换一个角度来满足你的需求,也许你并不真正需要这个 :)

自己写个工具就是现成的了...
用find遍历目录, 用readlink命令检测返回值来判断文件是否是软链接以及软链接的源文件位置, 全盘遍历的话工程有点大, 但是我没有想到更好的方法...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题