如何找到目录中指向同一目标的所有符号链接?
例如,以下是目录中的文件列表:
a.txt
b.txt
a -> target1
c -> target1
m -> target2
n -> target3
c.txt
z -> target1
我想获得链接到的内容的列表target1
。所以预期的输出将是:
a
c
z
答案1
考虑以下目录结构:
lrwxrwxrwx [...] a -> target1
lrwxrwxrwx [...] c -> target1
lrwxrwxrwx [...] m -> target2
lrwxrwxrwx [...] n -> target3
lrwxrwxrwx [...] t -> z
-rw-r--r-- [...] target1
-rw-r--r-- [...] target2
-rw-r--r-- [...] target3
lrwxrwxrwx [...] z -> target1
使用 GNUfind
查找指向同一 inode 的所有文件:
find -L . -samefile target1
-L
遵循符号链接,即使您有递归符号链接-samefile
查找与给定参数指向相同 inode 的所有文件target1
上述目录中的输出将如下所示:
./z
./a
./target1
./c
./t