Dairesel sembolik bağları nasıl bulurum?


5

Bir HP-UX sistemi üzerinde çalışıyorum ve dairesel sembolik bağlantılar olup olmadığını bulmak istiyorum.

Şimdiye kadar ben komutu kullanıyorum:

ls -lrt  `find ./ -follow -type l`

Ama sadece yapıyor ls -lrt Sonuç olarak geçerli dizinde.

Bir sistemdeki tüm dairesel sembolik bağları bulmak için hangi komutu kullanmalıyım?


ls -lrt? uzun biçimine göre sırala zaman değiştirildi , tersine ? Linux etiketlemek mi istedin? Çünkü bir Mac’te bu seçenekler bir anlam ifade etmiyor.
Daniel Beck

@Daniel: Seçenekler GNU Coreutils'te aynıdır. Ayrıca, gönderi açıkça Linux veya OS X'ten değil HP-UX'ten bahseder.
grawity

Mac'i hiçbir yerde etiketlemedim :). Unix'i etiketledim.
Vladimir

@grawity Huh. TAMAM. GNU / Linux makinelerinde ilginç bir şeyler yaptıklarını düşündüm. Mac / Linux sistemleri arasında geçiş yapmak genellikle komut satırı argümanları nedeniyle bir acıdır, bu yüzden sormak zorunda kaldım.
Daniel Beck

@ kullanıcı Mac OS X, BSD tabanlı sertifikalı bir Unix sistemidir. Özellikle etiketlemediysen osxYapmadım tamamen sebepsiz sor. Btw yok -follow argümanı find Unix'te - Sadece GNU olduğunu varsayıyorum.
Daniel Beck

Yanıtlar:


1
ls -lrt  `find / -follow -type l`

./ geçerli dizini arar. Olursa / komutunu yazdığınız şekliyle kök dizinden aratın. Aksi takdirde öndeki noktayı kaybedersiniz.


1
find / -follow -type l -exec ls -lrt {} \;?
Daenyth


0

Ne dersin:

find -exec sh -c 'readlink -f "$0" &> /dev/null || echo "$0"' {} \;

HPUX, C’de bir sistem çağrısı haricinde bir okuma bağlantısına sahip değildir.
jim mcnamara
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.