BASH Komutlarıyla Dosya İsimlerini Uzantılarından Ayırarak Yazdırmak

Denemeyi yapmak için bir konsol açalım ve içerisinde jpg uzantılı dosyaların olduğu bir klasöre cd'leyelim.

Bendeki klasörde "ls" komutunu çalıştırıyorum ve sonuç şu;

DSC_0054.JPG  DSC_0055.JPG  DSC_0056.JPG  DSC_0057.JPG  DSC_0059.JPG  DSC_0060.JPG  DSC_0061.JPG  DSC_0062.JPG  DSC_0064.JPG  DSC_0065.JPG





Şimdi amacım bu dosya isimlerini ".JPG" den arındırarak yazmak. Komut satırına şunu yazdıyorum:

for i in *;do NAME=`echo "$i" | cut -d'.' -f1`;echo "$NAME";done


Aldığım yanıt şu:

DSC_0054
DSC_0055
DSC_0056
DSC_0057
DSC_0059
DSC_0060
DSC_0061
DSC_0062
DSC_0064
DSC_0065

Komut satırındaki -f1 belirlediğimiz ayırma imi (buradaki '.' ) öncesindeki kısmı alıyor. Bunun yerine f2 yazılsaydı sadece .'dan sonraki kısmı yani extensionları alacaktı bu durunda alacağımız yanıt şu olacaktı:

JPG
JPG
JPG
JPG
JPG
JPG
JPG
JPG
JPG
JPG

Comments

Popular posts from this blog

Latex'te Denklem İçerisine Ufak Boşluklar Koymak

LaTeX'te Sunum Hazırlamak

Octave'da Grafik Çizdirme