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

Two Weeks with the Aquaris M10 FHD Ubuntu Edition Tablet (An Honest Review)