Linux'ta fd Komutu Nasıl Kullanılır

Yayınlanan: 2022-01-29
Ubuntu tarzı bir masaüstüne sahip bir Linux PC'de bir terminal penceresi.
Fatmawati Achmad Zaenuri/Shutterstock

Linux'ta fd , find komutuna daha kolay bir alternatiftir. Basitleştirilmiş bir sözdizimine sahiptir, mantıklı varsayılanları kullanır ve yerleşik sağduyu davranışına sahiptir. Onun adımlarını ele alalım.

fd'ye karşı find: Fark Nedir?

fd komutunun, Linux'ta sonsuza kadar var olan geleneksel find komutunun yerini alması amaçlanmamıştır. Bunun yerine fd , find öğesinin yaygın kullanımlarının çoğunu daha basit bir şekilde karşılamaya çalışır ve genellikle find öğesinden sekiz veya dokuz kat daha hızlıdır. Bazı kıyaslamalarını projenin GitHub deposu sayfasında görebilirsiniz.

Yeni Başlayanlar İçin 10 Temel Linux Komutu
İLGİLİ Yeni Başlayanlar İçin 10 Temel Linux Komutu

fd , bazı ls modlarına benzer şekilde renklendirilmiş bir çıktıya sahiptir. Özyinelemelidir, ancak varsayılan olarak gizli dizinleri aramaz. Git'i bilir ve ayrıca ".gitignore" dosyanızdaki tüm kalıpları otomatik olarak yok sayar.

fd varsayılan olarak büyük/küçük harfe duyarsızdır. Ancak, arama düzeniniz büyük harf içeriyorsa, fd büyük/küçük harfe duyarlı modda çalışır. Elbette, varsayılanları geçersiz kılabilirsiniz, ancak çoğu durumda sizin lehinize çalışırlar.

İLGİLİ: Tüm Linux'un Arama Komutları Nasıl Kullanılır?

fd yükleme

Ubuntu 19.04'ten (Disco Dingo) beri, resmi olarak bakımı yapılan paketi apt-get ile çağırarak fd doğrudan yükleyebilirsiniz. Ubuntu'nun daha eski bir sürümünü çalıştırıyorsanız Git hub sayfasındaki kurulum talimatlarını kontrol edin.

Aşağıdakileri yazın:

 sudo apt-get install fd-find 

Reklamcılık

Ubuntu'da, mevcut başka bir yardımcı programla ad çakışmasını önlemek için komut fdfind . fd olmasını istiyorsanız, bir takma ad oluşturabilirsiniz:

 takma ad fd=fdfind 

Takma adı kalıcı hale getirmek ve yeniden başlatmalardan sonra kullanılabilir durumda kalmasını sağlamak için, onu “.bashrc” veya “.bash_aliases” dosyanıza koyun.

İLGİLİ: Linux'ta Takma Adlar ve Kabuk İşlevleri Nasıl Oluşturulur

fd yüklemek için şu komutu yazın:

 sudo dfn yükleme fd-find 

Manjaro'da aşağıdakini yazın:

 sudo pacman -Syu fd 

fd'ye karşı fdfind

Karışıklığı önlemek için, Ubuntu test PC'mizde komutu varsayılan adıyla fdfind olarak bıraktık. fd ve fdfind , aşağıdaki örnekte göreceğiniz gibi tamamen aynı komuttur ( fdfind sürümünü göstermesini isterseniz, kendisine “fd” der):

 fdfind --versiyon 

"Fed" komutunu arayacağız, ancak örneklerde Ubuntu "fdfind" kullanacağız. Diğer Linux dağıtımlarında, birkaç tuş vuruşunu kaydetmek için “fdfind” yerine “fd” yazabilirsiniz.

fd ile Basit Aramalar

Komut satırı seçenekleri olmadan fd kullanırsanız, varsayılan olarak alt dizinlerdeki dosyaları listelemesi dışında, biraz ls gibi davranır.

Aşağıdakileri yazın:

 fdfind 

Çıktı, farklı dosya türleri ve dizinler için farklı renklerde görünür.

Reklamcılık

Belirli bir türdeki dosyaları görmek için -e (uzantı) seçeneğini kullanın. Uzantının önüne nokta (.) koymanız gerekmediğini ve büyük/küçük harfe duyarlı olmadığını unutmayın.

Örneğin, aşağıdakileri yazabilirsiniz:

 fdfind -e png 

Şimdi, listelenen dosyalar yalnızca PNG görüntü dosyalarıdır.

Tek bir dosya aramak için adını komut satırına şu şekilde yazın:

 fdfind indeksi.sayfa 

Dosya bulunur ve bir alt dizinde bulunur. fd özyinelemeli arama yapmasını söylememize gerek yoktu.

Aramanın belirli bir dizinde başlamasını sağlamak için komut satırına bir dosya yolu ekleyin. Aşağıdaki komut, “/etc” dizininde bir arama başlatacak ve dosya adında “passwd” içeren dosyaları arayacaktır:

 fdfind şifresi /vb 

Burada, dosya adında “coord” içeren tüm C kaynak kodu dosyalarını arıyoruz:

 fdfind -ec koordinatı 

Eşleşen iki dosya bulundu.

fd ve Git

Git, son derece popüler bir kaynak kodu sürüm kontrol sistemidir. Git'i bilgisayarınızda kullanıyorsanız, Git'e hangi dosyalarla ilgilenmesi gerektiğini ve hangilerini görmezden gelebileceğini söylemek için muhtemelen “.gitignore” dosyalarını kullanırsınız. Varsayılan olarak fd , “.gitignore” dosyalarınızdaki ayarlara uyar.

Reklamcılık

Bu dizinde bir Git deposu ve “.gitignore” dosyamız var. Aşağıdakileri yazıyoruz:

 ls -adl .git* 

Dosya adında "coord" geçen dosyaları listelemesini fd isteyelim. Ardından aramayı tekrarlayacağız ve -I (yok sayma yok) seçeneğini kullanacağız. Bu, fd'ye “ fd ” dosyasındaki ayarları yok saymasını ve eşleşen her dosyayı rapor etmesini söyler.

Tüm bunları yapmak için aşağıdakileri yazıyoruz:

 fdfind koordinatı
 fdfind koordinatı -I 

İkinci sonuç kümesindeki fazladan iki dosya, nesne dosyalarıdır. Bunlar, bir dosya programı derlendiğinde oluşturulur. Daha sonra, programın son yürütülebilir sürümünü oluşturmak için bağlayıcı tarafından kullanılırlar.

Nesne dosyaları genellikle kaynak kodu sürüm kontrol programları tarafından yok sayılır. Programınızı her derlediğinizde yeniden oluşturulurlar, böylece kopyalarını saklamanız gerekmez. “.gitignore” dosyasında Git'e nesne dosyalarını yok saymasını söyleyen bir giriş var ve varsayılan olarak fd onları da yok sayıyor.

-I (yok sayma yok) seçeneği, fd'yi “ fd ” dosyası tarafından yönlendirilmek yerine, bulduğu her şeyi döndürmeye zorlar.

Dosya Türleri ve Büyük/Küçük Harfe Duyarlılığı

fd dizinleri, dosyaları (yürütülebilir ve boş olanlar dahil) ve sembolik bağları aramasını isteyebilirsiniz. Bunu -t (tür) seçeneğini ve ardından aşağıdaki harflerden birini kullanarak yapabilirsiniz:

  • f : Dosya.
  • d : Dizin.
  • l : Sembolik bağlantı.
  • x : Yürütülebilir dosya.
  • e : Boş dosya.

Aşağıdaki, resimler adlı bir dizini arar:

 fdfind -td görselleri 

Reklamcılık

Geçerli olandan bir alt dizin altında bir eşleşme bulundu.

Büyük/küçük harf duyarlılığının arama kalıplarıyla nasıl çalıştığını görelim. Önce dosya adlarında “geo” geçen dosyaları, ardından dosya adlarında “Geo” geçen dosyaları aramak için aşağıdakileri yazıyoruz:

 fdfind -tf coğrafi
 fdfind -tf Coğrafi 

İlk komutta, fd büyük/küçük harfe duyarlı olmayan bir şekilde çalışmasına neden olan küçük harfli bir arama modeli kullandık. Bu, hem "Geo" hem de "geo"nun geçerli eşleşmeler olduğu anlamına gelir.

İkinci komutumuz, fd büyük/küçük harf duyarlı bir şekilde çalışmasına neden olan bir büyük harf karakteri içeriyordu. Bu, yalnızca "Geo"nun geçerli bir eşleşme olduğu anlamına gelir.

Komut Yürütme

fd komutu, başka bir komut başlatmanıza ve bulunan dosyaların her birinde yürütmenize izin verir.

Kaynak kod dizin ağacımızda bir yerde bir Zip dosyası olduğunu bildiğimizi varsayalım. ZIP uzantılı dosyaları arayan aşağıdaki komutu kullanarak onu arayabiliriz:

 fdfinf -e zip 

Reklamcılık

-x (exec) seçeneği ile, bulunan her dosyayı kendisi tarafından işlenmek üzere başka bir komuta geçirebilirsiniz. Örneğin, ZIP dosyamızın sıkıştırmasını açmak için unzip yardımcı programını çağırmak için aşağıdakini yazabiliriz (“{}”, bulunan dosyayı temsil eden bir yer tutucudur):

 fdfind -e zip -x sıkıştırmayı aç {}

Bu, dosyayı geçerli çalışma dizininde açacaktır. ZIP dosyasını içeren dizinde açılmasını istiyorsak aşağıdaki yer tutuculardan birini kullanabiliriz:

  • {} : Bulunan dosyanın tam dosya yolu ve adı.
  • {/} : Bulunan dosyanın dosya adı.
  • {//} : Bulunan dosyayı içeren dizin.
  • {/.} : Bulunan dosyanın uzantısı olmadan dosya adı.

ZIP dosyamızın onu içeren dizinde bulunması ve açılması için unzip -d (dizin) seçeneğini kullanabilir ve üst dizin yer tutucusunu ( {//} ) iletebiliriz:

 fdfind -e zip -x sıkıştırmayı aç {} -d {//} 

ZIP dosyası daha sonra bulunur ve sıkıştırılmış dosya kendi üst dizininde bulunur.

Bulmanız Gereken Yer?

Bu kadar basitlikle en yaygın kullanımları kapsadığı için fd , kolayca "bul" komutunuz haline gelebilir. Daha gelişmiş özelliklerine ihtiyaç duyduğunuzda, her zaman o deneyimli ustaya geri dönebilirsiniz, find .

İLGİLİ: Geliştiriciler ve Meraklılar için En İyi Linux Dizüstü Bilgisayarlar