En çok bağlanan bağlantıları içeren unix'teki ilk 10 dosyayı nasıl bulabilirim?
En çok bağlanan bağlantıları içeren unix'teki ilk 10 dosyayı nasıl bulabilirim?
Yanıtlar:
Bu iş gibi görünüyor:
$ find . -type l -exec readlink {} \; | sort | uniq -c | sort -r | head
Gösterilen dosya sayısının 10'dan farklı olmasını istiyorsanız, istediğiniz sayıyı argüman olarak ekleyin head.
Bu, geçerli dizinin altındaki sembolik bağlantıları arayacak, başka bir dizinde arama .yapmak için istediğiniz yolu ile değiştireceksiniz .
find -type f -ls | sort -rn -k 4 | head -10
Çıktı azalan bağlantı sayısı sırasına göre sıralanır. (-r = geri, -n = sayısal sıralama, -k 4 = sütun 4'te sırala)
Eğer sembolik bağlantılar istiyorsanız, diğer cevaplara bakmak zorundasınız. Kolay cevap veren tek yoruma cevap verdim. : P
Size bir dosyada kaç tane bağlantı olduğunu söyleyen bir şey olduğuna inanmıyorum.
Haklıysam, dizin ağacınızı bağlantılar için aramanız ve onları bağladıkları dosyaya göre sıralamanız gerekir.
findKomut ile bağlantıları listeleyebilirsiniz -type lancak linkleri bulabilirsiniz en özel işlem kullanmadıkça, bağlantı giderir görmüyorum.
O zaman dene:
sudo find -L / -type l -exec ls {} \;
bağlantıları listelemek için. Sonra çıktısını yönlendirmek sort, uniqböylece ve.
Bunu henüz test etmedim (zaten tamamlanmadı): Dosya sistemimde bulmak için çoğaltılmış bağlantılarım olup olmadığından emin değilim, bu da testi anlamlı hale getirecek.
ls -lsize sabit bağlantıların sayısını gösterecektir.
-exec ls {}bağlantıyı gösterecek ancak bağlantı kurmayacağını gösterecektir. Hedefi görmek için -lsveya tuşunu kullanabilirsiniz -exec ls -l {}.
-Lbağlantıları çözecek ve type -lbulamayacaksınız.