Shell
查找符號連結指向同一個目標
如何在一個目錄中找到指向同一個目標的所有符號連結?
例如,這是一個目錄中的文件列表:
a.txt b.txt a -> target1 c -> target1 m -> target2 n -> target3 c.txt z -> target1
我想得到一個連結到的列表
target1
。所以預期的輸出將是:a c z
考慮以下目錄結構:
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
使用 GNU
find
查找所有指向同一個 inode 的文件:find -L . -samefile target1
-L
遵循符號連結,即使您有遞歸符號連結-samefile
查找指向與給定參數相同的 inode 的所有文件target1
上述目錄中的輸出如下所示:
./z ./a ./target1 ./c ./t