Linux'ta Dosya Bulmanın 3 Yolu

İçindekiler:

Linux'ta Dosya Bulmanın 3 Yolu
Linux'ta Dosya Bulmanın 3 Yolu

Video: Linux'ta Dosya Bulmanın 3 Yolu

Video: Linux'ta Dosya Bulmanın 3 Yolu
Video: Bu Klasöre Erişim izniniz Yok 2 (KESİN ÇÖZÜM) 2024, Mayıs
Anonim

Nasıl yapılacağını bilmiyorsanız, bir Linux sisteminde bir dosya bulmak zor olabilir. Dosyaları bulmanın en iyi yolu birkaç farklı terminal komutu kullanmaktır. Bu komutlara hakim olmak, dosyalarınız üzerinde tam kontrol sahibi olmanızı sağlayabilir ve bunlar, diğer işletim sistemlerindeki basit arama işlevlerinden çok daha güçlüdür.

adımlar

Yöntem 1/3: "Bulun" kullanma

690519 10 1
690519 10 1

Adım 1.

yerini belirlemek işlevsellik.

Lokasyon komutu, dosya yapınızın bir veritabanında çalıştığı için genellikle find komutundan çok daha hızlı çalışır. Tüm Linux dağıtımları, konum bulma işlevi yüklü olarak gelmez, bu nedenle yüklemeyi denemek için aşağıdaki komutları girin:

  • sudo apt-get update yazın ve ↵ Enter'a basın.
  • Debian ve Ubuntu'ya şu şekilde yükleyebilirsiniz: sudo apt-get install mlocate yazın ve ↵ Enter'a basın. Lokasyon zaten kuruluysa, mlocate mesajının zaten en yeni sürüm olduğunu görürsünüz.
  • Arch Linux'ta pacman paket yöneticisini kullanın: pacman -S mlocate
  • Gentoo için, ortaya çıkın: ortaya mlocate
690519 11 1
690519 11 1

Adım 2. Güncelleyin

yerini belirlemek veri tabanı.

Bulma komutu, veritabanı oluşturulup güncellenene kadar hiçbir şey bulamaz. Bu, günlük olarak otomatik olarak gerçekleşir, ancak manuel olarak da güncelleyebilirsiniz. Bul özelliğini hemen kullanmaya başlamak istiyorsanız bunu yapmanız gerekir.

sudo updateb yazın ve ↵ Enter'a basın

690519 12 1
690519 12 1

Adım 3. Kullanın

yerini belirlemek basit aramalar yapmak için

Bulma komutu hızlıdır, ancak bul komutu kadar çok seçeneğe sahip değildir. Bul komutuyla aynı şekilde temel bir dosya araması gerçekleştirebilirsiniz.

bul -i "*.jpg"

  • Bu komut,-j.webp" />
  • Bul komutu gibi, -i de sorgunuzun durumunu yok sayar.
690519 13 1
690519 13 1

Adım 4. Arama sonuçlarınızı sınırlayın

Aramalarınız ele alınamayacak kadar çok sonuç döndürüyorsa, -n seçeneğini ve ardından görüntülenmesini istediğiniz sonuç sayısını kullanarak bunları kısaltabilirsiniz.

bulun -n 20 -i "*.jpg"

  • Yalnızca sorguyla eşleşen ilk 20 sonuç görüntülenecektir.
  • Ayrıca | kolay kaydırma için sonuçları daha azına göndermek için boru.

Yöntem 2/3: "Bul" kullanma

690519 1 1
690519 1 1

Adım 1. Dosya adına göre bir dosya arayın

Bu, find komutunu kullanarak yapabileceğiniz en temel aramadır. Aşağıdaki komut, geçerli dizinde ve herhangi bir alt dizinde sorguyu arayacaktır.

-iname "dosyaadı"nı bul

adı yerine -iname kullanılması, sorgunuzun durumunu yok sayar. -name komutu büyük/küçük harf duyarlıdır

690519 2 1
690519 2 1

Adım 2. Aramayı kök dizinde başlayacak şekilde ayarlayın

Tüm sisteminizde arama yapmak istiyorsanız, sorguya / değiştiricisini ekleyebilirsiniz. Bu, find'in kök dizinden başlayarak tüm dizinleri aramasını söyleyecektir.

bul / -iname "dosya adı"

  • /'yi /home/pat gibi bir dizin yolu ile değiştirerek belirli bir dizinde aramayı başlatabilirsiniz.
  • bir kullanabilirsiniz. / yerine aramayı yalnızca geçerli dizinde ve alt dizinlerde gerçekleştirilmeye zorlamak için.
690519 3 1
690519 3 1

Adım 3. Joker karakteri kullanın

* sorgunun parçasıyla eşleşen herhangi bir şeyi aramak için.

Tam adını bilmiyorsanız veya belirli bir uzantıya sahip her şeyi bulmak istiyorsanız, joker * karakteri bir şeyi bulmak için yararlı olabilir.

/home/pat -iname "*.conf" öğesini bulun

  • Bu, Pat'in kullanıcı klasöründeki (ve alt dizinlerindeki) tüm.conf dosyalarını döndürür.
  • Dosya adının bir kısmıyla eşleşen her şeyi bulmak için de kullanabilirsiniz. Örneğin, wikiHow ile ilgili çok sayıda belgen varsa, hepsini "*wiki*" yazarak bulabilirsin.
690519 4 1
690519 4 1

Adım 4. Arama sonuçlarınızın yönetimini kolaylaştırın

Çok sayıda arama sonucu alıyorsanız, bunları gözden geçirmek zor olabilir. | karakter ve arama sonuçlarını "less" filtreleme programına gönderin. Bu, sonuçları çok daha kolay bir şekilde kaydırmanıza ve filtrelemenize izin verebilir.

bul /home/pat -iname "*.conf" | az

690519 5 1
690519 5 1

Adım 5. Belirli sonuç türlerini bulun

Değiştiricileri yalnızca belirli türdeki sonuçları döndürmek için kullanabilirsiniz. Doğru değiştiriciyi kullanarak normal dosyaları (f), dizinleri (d), sembolik bağlantıları (l), karakter aygıtlarını (c) ve blok aygıtlarını (b) arayabilirsiniz.

bul / -type f -iname "dosyaadı"

690519 6 1
690519 6 1

Adım 6. Arama sonuçlarınızı boyuta göre filtreleyin

Benzer adlara sahip çok sayıda dosyanız varsa, ancak aradığınız boyutu biliyorsanız, sonuçlarımızı boyuta göre filtreleyebilirsiniz.

bul / -size +50M -iname "dosyaadı"

  • Bu, 50 megabayt veya daha büyük sonuçları döndürür. Daha büyük veya daha küçük boyutları aramak için + veya - kullanabilirsiniz. + veya - işaretinin atlanması, tam olarak belirtilen boyuttaki dosyaları arayacaktır.
  • Bayt (c), kilobayt (k), megabayt (M), gigabayt (G) veya 512 bayt bloklara (b) göre filtreleyebilirsiniz. Boyut bayrağının büyük/küçük harfe duyarlı olduğunu unutmayın.
690519 7 1
690519 7 1

Adım 7. Arama filtrelerini birleştirmek için boole operatörlerini kullanın

Farklı arama türlerini tek bir aramada birleştirmek için -ve, -veya ve -not operatörlerini kullanabilirsiniz.

find /travelphotos -type f -size +200k -not -iname "*2015*"

Komut, boyutu 200 kilobayttan büyük olan ancak dosya adında hiçbir yerde "2015" içermeyen "travelphotos" dizinindeki dosyaları bulur

690519 8 1
690519 8 1

Adım 8. Dosyaları sahiplerine veya izinlerine göre arayın

Bir kullanıcıya ait belirli bir dosyayı veya belirli izinlere sahip dosyaları bulmaya çalışıyorsanız, aramayı daraltabilirsiniz.

bul / -user pat -iname "dosyaadı" bul / -grup kullanıcıları -iname "dosyaadı" bul / -perm 777 -iname "dosyaadı"

Yukarıdaki örnekler, sorgu için belirtilen kullanıcıları, grupları veya izinleri arayacaktır. Bu türle eşleşen tüm dosyaları döndürmek için dosya adı sorgusunu da atlayabilirsiniz. Örneğin, find / -perm 777, 777 (kısıtlama yok) izinlerine sahip tüm dosyaları döndürür

690519 9 1
690519 9 1

Adım 9. Dosyalar bulunduğunda eylemleri gerçekleştirmek için komutları birleştirin

Bul komutunu, sorgu tarafından döndürülen dosyalarda yürütebilmek için diğer komutlarla birleştirebilirsiniz. Find komutunu ve ikinci komutu -exec bayrağıyla ayırın ve ardından satırı {};

bulmak. -type f -perm 777 -exec chmod 755 {};

Bu, 777 izne sahip dosyalar için geçerli dizini (ve tüm alt dizinleri) arayacaktır. Daha sonra izinleri 755 olarak değiştirmek için chmod komutunu kullanacaktır

Yöntem 3/3: Dosyalarda Metin Arama

690519 14 1
690519 14 1

Adım 1. öğesini kullanın

grep Dosyalar içinde metin dizilerini aramak için komut.

Belirli bir tümcecik veya karakter dizisi içeren bir dosya arıyorsanız, grep komutunu kullanabilirsiniz. Temel bir grep komutu aşağıdaki gibi biçimlendirilir:

grep -r -i "arama sorgusu" /path/to/directory/

  • -r, aramayı "özyinelemeli" olarak ayarlar, böylece sorgu dizesini içeren herhangi bir dosya için geçerli dizini ve tüm alt dizinleri arar.
  • -i, sorgunun büyük/küçük harfe duyarlı olmadığını belirtir. Aramayı büyük/küçük harfe dikkat etmeye zorlamak istiyorsanız, -i operatörünü atlayın.
690519 15 1
690519 15 1

Adım 2. Fazla metni kesin

Yukarıdaki gibi bir grep araması yaptığınızda, eşleşen sorgunun vurgulandığı metinle birlikte dosya adını göreceksiniz. Aşağıdakileri ekleyerek eşleşen metni gizleyebilir ve yalnızca dosya adlarını ve yollarını görüntüleyebilirsiniz:

grep -r -i "arama sorgusu" /path/to/directory/ | kes -d: -f1

690519 16 1
690519 16 1

Adım 3. Hata mesajlarını gizleyin

grep komutu, doğru izinler olmadan klasörlere erişmeye çalıştığında veya boş klasörlere girdiğinde bir hata döndürür. Hata mesajlarını /dev/null dizinine gönderebilirsiniz, bu onları çıktıdan gizleyecektir.

grep -r -i "arama sorgusu" /path/to/directory/ 2>/dev/null

Önerilen: