Symlink türündeki tüm dosyaları getirmek için find komutunu kullanabilir ve -ilname
bağlantı hedefinin adına göre arama yapma seçeneği ekleyebilirsiniz . Bu, tıpkı -iname
bağlantı adı yerine bağlantı hedefi yerine ancak olduğu gibi çalışır .
find -type l -ilname "*bar*"
Bu hala hedef değil, linkin adını yazdıracak. Hedeflerin isimlerini yazdırmak istiyorsanız, şunu deneyin:
find -type l -ilname "*bar*" -printf "%l\n"
Veya tam bir ls
stil çıktı elde edin
find -type l -ilname "*bar*" -ls
" Listeyle bir şeyler yap " derken ne anlama geldiği belirsizdir, ancak bağlantı dosyalarında çalışmak istiyorsanız, -exec
aşağıdakileri bulmak için argümanı kullanabilirsiniz:
find -type l -ilname "*bar*" -exec touch {} \;
Ancak, bağlantı hedefleri üzerinde işlem yapmanız gerekiyorsa -printf
, hedef değerleri elde etmek için kullanmanız ve daha sonra xargs
işlem yapmak için kendiniz kullanmanız gerekecektir. Böyle bir şey yapabilirsin:
find -type l -printf "%l\n" | grep bar | xargs touch
... aynı zamanda , adınızı eşleştirmek için kullanmak grep
yerine nasıl kullanılacağını gösterir find -ilname
, ancak bu şekilde de yapabilirsiniz.