Wildcard kullanımı – Linux Bash Programlama

Wildcard kullanımı – Linux Bash Programlama

Bügün linuxte wildcard kullanımından bahsedeceğim. Bunlar terminal üzerinden yapacağınız işlemleri inanılmaz derecede kolaylaştıracak. Wildcardlar komut satırında başka karakterler yerine kullanabileceğimiz parçacıklardır. İsterseniz hemen başlayalım örneklerle daha
iyi anlayacaksınız.

* Belirsiz bir sürü karakteri ifade eder(kaç karakter bulunduğu ve bunların ne olduğu önemli değildir. Tüm karakterlerin yerine geçer.
? Herhangi bir karakterin yerine kullanılabilir.
[abcde] Parantez içinde listelenmiş herhangi bir karakter yerine geçer.
[a-e] Aralıktaki herhangi bir karakter yerine geçer
[!abcde] Listelenmemiş herhangi bir karakteri ifade eder.
[!a-e] Aralıkta bulunmayan herhangi bir karakteri belirtir.
{debian,linux} Parantez içindeki kelimelerden herhangi birini belirtir

Wildcardları dosya parametresi alan yani dosya ile işlem yapabilen herhangi komut ile kullanabilirsiniz.

Şimdi de biraz örnek verelim…
rm komutunu * wildcardı ile kullandığınızda, * dizin içindeki tüm dosyaları ifade eder. Ve aşağıdaki komut o dizindeki tüm dosyaları siler.(Not: rm komutu ile kullanırken dikkat edin yanlışlıkla tüm dosyalarınızı silebilirsiniz!)

rm *

Bu komutumuz da içinde linux geçen ve “.html” uzantılı tüm dosyalarımızı dizin1 adlı klasöre taşıyor. Daha önceden söylediğim gibi 100’lerce html sayfa içinden adında linux geçenleri bulup kopyalamak isteseydiniz ne kadar zor olacaktı. Wildcardlar ile bu kadar kolay 😉

mv *linux*.html dizin1

Aşağıdaki kodumuzda da not ile başlayan ve ondan sonra 3 karakter daha bulunduran dizininizdeki tüm dosyaları siliyor.(not123,notali,noter1 gibi dosyaları silebiliriz)

rm not???

Aşağıdaki kodumuz da hda1,hda2,…..,hda9 şeklinde tüm dizinlerin içeriğini listeliyor.

ls hda[0-9]

Bu komutumuzda hd veya sd ile başlayıp sonunda a’dan z’ye kadar kadar herhangi bir harfi içeren dizinleri listeliyor.(hda,hds,sdu,sdz gibi)

ls {hd,sd}[a-c]

Bu koumut büyük A harfinde büyük Z harfine kadar olan harflerin herhangi biriyle başlayan dosyaları dizin2 ye kopyalıyor.

cp [A-Z]* dizin2

Bu komut sonu c,e,h veya g ile bitmeyen tüm dosyaları siliyor.

rm *[!cehg]

Daha pek çok örnek verilebilir ama genel olarak kullanımlar böyle wildcardlarla neler yapacağınız tamamen size kalmış…

 Wildcard kullanım – Linux Bash Programlama

İlgili Yazılar

Yorum Yok

Fikrini Paylaş

Yorum yaz...


“ Önemli olan "ne yapabildiğiniz" değil, "ne yapabileceğinizdir." ”