Dosyalar biriktikçe çalıştığınız klasörler zamanla çorba gibi olmaya başlar. Hele ki masaüstü ya da indirilenler klasörü gibi sık kullanılan yerlerde bu daha da hızlı olur. Bir şey indirmişsinizdir, sonra bir tane daha… Bir bakmışsınız, müzik, belge, kurulum dosyası, ekran görüntüsü, hepsi bir arada. Aradığınızı bulmak bile zorlaşır.
Benim de başıma sık sık geliyordu. Özellikle çalışırken masaüstüm bir süre sonra karmaşaya dönüyordu. Her defasında oturup tek tek dosyaları ayırmak, klasör oluşturmak, onları içine sürüklemek derken zaman harcıyordum. Sonra düşündüm: Bu işi neden bilgisayara bırakmıyorum?
Basit Bir Yöntem: Dosyaları Otomatik Ayırmak
Windows’ta çalışan küçük bir komut dosyasıyla (yani .bat uzantılı bir dosyayla), herhangi bir klasördeki dosyaları türüne göre otomatik olarak ayırmak mümkün. PDF dosyaları bir klasöre, resimler başka bir klasöre, kurulum dosyaları, müzikler, yazılım dosyaları ayrı ayrı klasörlere taşınabiliyor. Hatta masaüstündeki klasörleri bile tek bir yerde toplayabiliyorsunuz.
Bu iş için yazdığım küçük bir dosya var. Kod kısmını birazdan paylaşacağım. Tek yapmanız gereken bu kodu kopyalayıp .bat uzantılı bir dosya olarak kaydetmek. Sonra da çift tıklayıp çalıştırmak.
Ne İşe Yarar?
Script çalıştığında seçtiğiniz klasöre giriyor, oradaki dosyaların uzantılarına bakıyor ve her dosyayı ilgili klasöre taşıyor. Mesela .jpg, .png, .svg gibi görseller “Resimler” klasörüne, .docx, .pdf, .xlsx gibi belgeler “Belgeler” klasörüne, .exe, .zip gibi dosyalar “Kurulum” ya da “Sıkıştırılmış Dosyalar” klasörüne yerleştiriliyor. Klasörler varsa onlar da ayrı bir “Klasörler” adlı dizine taşınıyor.
Kodda onlarca uzantı tanımlı. .py, .js, .html, .json gibi yazılım dosyaları da unutulmadı. Tanımlı olmayan ya da bilinmeyen uzantılar için de “Diğer Dosyalar” klasörü var.
Kullanım
Aşağıdaki kodu bir not defterine yapıştırıp .bat uzantısıyla kaydedin. Örneğin duzenle.bat gibi. Daha sonra çift tıklayarak çalıştırabilirsiniz.
Kod:
</pre> @echo off chcp 65001 >nul setlocal enabledelayedexpansion :: ================================================ :: DOSYA DÜZENLEME YÖNETİCİSİ - İBRAHİM TONCA :: Web: https://www.ibrahimtonca.com :: Otomatik dosya kategorilendirme aracı :: ================================================ :: Hedef klasör set "hedefKlasor=%USERPROFILE%\Downloads" cd /d "%hedefKlasor%" :: "Klasörler" adlı klasör oluştur ve tüm klasörleri oraya taşı if not exist "Klasörler" mkdir "Klasörler" for /d %%d in (*) do ( if /I not "%%d"=="Klasörler" ( move "%%d" "Klasörler\" >nul ) ) :: Dosyaları kontrol et for %%f in (*.*) do ( set "dosya=%%f" set "uzanti=%%~xf" set "uzanti=!uzanti:~1!" set "kategori=" :: Resimler for %%x in (jpg jpeg png gif bmp webp svg ico tif tiff heic) do if /I "!uzanti!"=="%%x" set "kategori=Resimler" :: Belgeler for %%x in (pdf doc docx xls xlsx ppt pptx txt rtf odt csv) do if /I "!uzanti!"=="%%x" set "kategori=Belgeler" :: Videolar for %%x in (mp4 mkv avi mov wmv flv m4v) do if /I "!uzanti!"=="%%x" set "kategori=Videolar" :: Müzikler for %%x in (mp3 wav flac aac ogg m4a) do if /I "!uzanti!"=="%%x" set "kategori=Müzikler" :: Arşivler for %%x in (zip rar 7z tar gz bz2 iso) do if /I "!uzanti!"=="%%x" set "kategori=Sıkıştırılmış Dosyalar" :: Kurulum for %%x in (exe msi dmg) do if /I "!uzanti!"=="%%x" set "kategori=Kurulum Dosyaları" :: Yazılım/Kod for %%x in (py js ts java c cpp cs html css php json xml rb go rs sql asp jsp sh bat pl htaccess) do if /I "!uzanti!"=="%%x" set "kategori=Yazılım Dosyaları" :: Yapılandırma/Sistem for %%x in (ini cfg conf env yaml yml log gitignore editorconfig) do if /I "!uzanti!"=="%%x" set "kategori=Yapılandırma Dosyaları" :: Sertifikalar for %%x in (pem crt cer key pfx) do if /I "!uzanti!"=="%%x" set "kategori=Sertifikalar" :: Kategori tanımlandıysa taşı if defined kategori ( if not exist "!kategori!" mkdir "!kategori!" move "!dosya!" "!kategori!\" >nul ) else ( :: Tanınmayan dosyaları ayrı klasöre taşı if not exist "Diğer Dosyalar" mkdir "Diğer Dosyalar" move "!dosya!" "Diğer Dosyalar\" >nul ) ) echo Tüm dosyalar ve klasörler düzenlendi. pause <pre>
İndirmek için tıklayın!
Düzenlemeden Önceki Hali:
Düzenlemeden Sonraki Hali:
Notlar
-
Kod yalnızca taşıma işlemi yapar, hiçbir dosyayı silmez.
-
Eğer Windows “Yönetici izni” isterse, kodu sağ tıklayıp “Yönetici olarak çalıştır” diyebilirsiniz.
-
Hedef klasörü değiştirmek isterseniz, kodun başındaki klasör yolunu değiştirebilirsiniz. Örneğin
DownloadsyerineDesktopyazarak masaüstünüzü düzenleyebilirsiniz. -
Türkçe karakterlerle uyumludur.
Sonuç
Bu tarz küçük çözümler, bilgisayar başında geçirdiğiniz zamanı daha verimli kılabilir. Her gün beş dakika uğraşmak yerine bir tıklamayla her şeyin düzenlenmesi güzel bir rahatlık.
Benim gibi masaüstünü ya da indirilenler klasörünü sık kullanan biriyseniz, bu yöntemi denemenizi öneririm. Hem bilgisayarınız temiz görünür, hem siz dağınıklıkla uğraşmazsınız.


