Dig*_*oss 124
这取决于,如果您正在尝试查找被调用的特定文件的链接,foo.txt,那么这是唯一的好方法:
find -L / -samefile path/to/foo.txt
Run Code Online (Sandbox Code Playgroud)
另一方面,如果您只是想找到恰好命名的任何文件的链接foo.txt,那么就像
find / -lname foo.txt
Run Code Online (Sandbox Code Playgroud)
要么
find . -lname \*foo.txt # ignore leading pathname components
Run Code Online (Sandbox Code Playgroud)
dog*_*ane 19
找到文件的inode编号,然后搜索具有相同inode编号的所有文件:
$ ls -i foo.txt
41525360 foo.txt
$ find . -follow -inum 41525360
Run Code Online (Sandbox Code Playgroud)
或者,尝试lname选项find,但如果你有相对的符号链接,这将不起作用,例如a -> ../foo.txt
$ find . -lname /path/to/foo.txt
Run Code Online (Sandbox Code Playgroud)
我更喜欢使用该symlinks实用程序,它在搜索损坏的符号链接时也很方便。安装方式:
sudo apt install symlinks
Run Code Online (Sandbox Code Playgroud)
显示当前文件夹和子文件夹中的所有符号链接:
symlinks -rv .
Run Code Online (Sandbox Code Playgroud)
-r: 递归-v: 详细(显示所有符号链接,不仅是损坏的符号链接)要查找特定的符号链接,只需grep:
symlinks -rv . | grep foo.txt
Run Code Online (Sandbox Code Playgroud)