Toplu olarak dosya uzantıları nasıl değiştirilir?

alattin (17125) 5 yıl önce sordu

Bir program kullanmadan toplu olarak dosya uzantıları nasıl değiştirilir? Programsız toplu olarak alt klasörlerde bulunan dosyaların uzantıları nasıl değiştirilir? Dosya uzantısı komut isteminden nasıl değiştirilir?

Toplam 1 cevap


alattin (17125) 5 yıl önce cevapladı

Windows işletim sisteminde komut istemi (cmd) üzerinden pek çok işlem yapmak mümkündür. Örneğin komut ile dosya adı değiştirmek ya da komut ile dosya uzantısı değiştirmek mümkündür. Windows arayüzü altında yapamağınız toplu dosya adı değiştirme, toplu dosya uzantısı değiştirme gibi işlemleri komut satırından kolayca yapabilirsiniz.

Programsız toplu halde dosya adı veya uzantısı değiştirme

ren veya rename komutu dosya adını veya uzantısını değiştirmek için kullanılır. Her iki komutta aynıdır. Ren komutu, Rename, komutunun kısa yazılmış halidir.

Aşağıdaki komut adı belge.doc olan dosyanın adını belge1.doc olarak değiştirir.

ren belge.doc belge1.doc

Yine şu komut aynı işi yapacaktır:

rename belge.doc belge1.doc

Komut isteminde joker karakter denen özel karakterler kullanmak da mümkündür. *, ? işareti birer joker karakterdir:

  • * karakteri her şey, adı ne olursa olsun anlamına gelir.
  • ? karakteri tek bir karakter yerine geçer.

Örneğin *.*   dosyanın adı ve uzantısı ne olursa olsun demektir.
Örneğin *.doc  uzantısı doc olan tüm dosyalar demektir.
Örneğin *.?oc ifadesi adı ne olursa oldun dosya uzantısı herhangi bir karakter ile başlayan ve oc ile devam eden dosyaları temsil eder. Örneğin bu filtreye doc, koc, foc, poc gibi uzantılara sahip dosyalar girer.

ren *.txt *.html

yukarıdaki komut uzantısı txt olan tüm dosyaların uzantısını html yapar.

ren veya rename komutu dosya adını ve uzantısını değiştirir. Bunu çalıştırıldığı ortamdali tüm dosyalar için yapar alt klasörlere erişemez. Ren  komutunun alt klasörlere erişen bir parametresi yoktur.

Bu sebepten alt klasörleri de kapsayacak şekilde kullanmak için forfiles komutu ile birlikte kullanılmalıdır.

Tüm alt klasörlerdeki dosyaların uzantısını değiştirme

Eğer tüm dosyaların, alt klasörleri de kapsayacak şekilde, adını ya da uzantısını değiştirmek istiyorsanız şu komutu kullanabilirsiniz:

forfiles /S /M *.doc /C "cmd /c rename @file @fname.docx"

Bu komut çalıştırıldığı klasörü tarar ve sadece uzantısı doc olan dosyaların uzantısını docx olarak değiştirir.

Tüm alt klasörlerdeki dosyaların uzantısını silme

Eğer tüm dosyaların, alt klasörleri de kapsayacak şekilde, dosya uzantısını silmek, kaldırmak istiyorsanız şu komutu kullanabilirsiniz:

forfiles /S /M *.html /C "cmd /c rename @file @fname"

Bu komut çalıştırıldığı klasördeki ve o klasörün altındaki tüm alt klasörlerde html uzantılı dosyaların uzantısını siler. Örneğin index.html olan bir dosya artık sadece index olacaktır. Bu komut dosyalara virüs tarafından bir ek yapıldığında işe yarar bir komuttur. 

Tüm alt klasörlerdeki dosyaların adlarına ön ek yapmak

Rename komutu ile sadece uzantı değiştirmek ya da silmek değil dosya adı üzerinde de işlem yapabilirsiniz. Örneğin elinizde yüzlerce mp3 var ve aynı sanatcıya ait. Bu dosyaların adlarının başına sanatçı adını eklemek istiyorsunuz. Şu komutu kullanabilirsiniz:
 

forfiles /S /M *.mp3 /C "cmd /c rename @file coldplay-@file"

Bu komut çalıştırıldığı klasördeki ve o klasörün altındaki tüm alt klasörlerdeki mp3 dosyalarının başına coldplay- ekini getirecektir. Örneğin Yellow.mp3 adlı bir dosyanız varsa coldplay-yellow.mp3 olarak adı değişecektir.