大家好,我需要在 linux 中这样做:
怎么做? 谢谢!
查找文件的 inode 编号,然后搜索具有相同 inode 编号的所有文件:
$ ls -i foo.txt 41525360 foo.txt $ find . -follow -inum 41525360
或者,尝试 find的 lname选项,但是如果你有相对的符号链接,例如 a -> ../foo.txt,这将不起作用
find
lname
a -> ../foo.txt
$ find . -lname /path/to/foo.txt
这取决于,如果你试图找到一个叫做 foo.txt,的特定文件的链接,那么这是唯一的好方法:
foo.txt,
find -L / -samefile path/to/foo.txt
另一方面,如果您只是试图找到指向 任何文件的链接,而这个文件恰好命名为 foo.txt,那么类似于
foo.txt
find / -lname foo.txt
或者
find . -lname \*foo.txt # ignore leading pathname components
我更喜欢使用 symlinks实用程序,它在搜索断开的符号链接时也很方便:
symlinks
sudo apt install symlinks
显示当前文件夹和子文件夹中的所有符号链接:
symlinks -rv .
要找到一个特定的符号链接,只需要 grep:
grep
symlinks -rv . | grep foo.txt