İle yapılan bir arama locate
dosya sisteminde bulur yolları.
Genellikle, yalnızca dosyalarla veya yalnızca dizinlerle ilgilendiğiniz bir önsezi bilirsiniz.
Bir 'bulma' araması genellikle birçok sonuç döndürür. Çıktıyı kısaltmaya yardımcı olduğu için sonuca yalnızca türlerden birini dahil etmek yararlı olacaktır.
Ancak dosya veya dizinleri dışarıda bırakmak için daha ilginç bir argüman vardır: çünkü sonuç yollarının listesi belirsiz olabilir - sadece teoride değil.
Aşağıdaki örnek, sıradışı olmayan gerçek bir dünya örneğidir:
$ locate --regex --basename "xfce4-keyboard-overlay$"
/usr/local/bin/xfce4-keyboard-overlay
/usr/local/share/xfce4-keyboard-overlay
Tamam, bir şey bulduk! Ama ... dosyalar veya dizinler?
$ file /usr/local/bin/xfce4-keyboard-overlay
/usr/local/bin/xfce4-keyboard-overlay: bash script
Bu bir dosya ...
$ file /usr/local/share/xfce4-keyboard-overlay
/usr/local/share/xfce4-keyboard-overlay: directory
ikinci değil.
Bu belirsizlik, uzun yol listelerinin okunmasını zorlaştırıyor, bu nedenle dizinleri filtrelemek gerçekten güzel olurdu, örneğin için bir comman line seçeneği kullanarak locate
.
Böyle bir şey var mı? Dizinler için filtre konumdan ayrı olsa bile?
En azından, kontrol edilecek tüm dosya adlarını yinelemek için bir komut dosyası kullanılabilir - bu yavaş olabilir.
while
?