Windows kullanıcıları için komut dosyaları, sistemle etkileşimde bulunmanın hızlı ve etkili yollarından biridir. Bu yazıda, iki farklı .bat
dosyasının (batch script) ne işe yaradığını, nasıl çalıştığını ve hangi durumlarda kullanılabileceğini detaylıca açıklayacağım. Her iki dosya da bilgisayarınızdaki sürücüleri kontrol edip içindeki dosya ve klasörleri listelemeye yarar.
1. list_files_ana_html.bat
– Kök Dizin Listeleyici (HTML Formatında)
Amaç:
Bu dosya, bilgisayarınızdaki her bir sürücünün sadece kök dizinindeki dosya ve klasörleri listelemek için kullanılır. Yalnızca ilk seviyedeki öğeleri tarar, alt klasörlere girmez ve her bir sürücü için HTML formatında çıktı dosyası oluşturur.
Kod:
@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion
:: Tarih ve saat bilgisini al
for /f "tokens=1-4 delims=/ " %%a in ('date /t') do (
set day=%%a
set month=%%b
set year=%%c
)
for /f "tokens=1-2 delims=: " %%a in ("%time%") do (
set hour=%%a
set min=%%b
)
:: Sürücü harflerini A'dan Z'ye kontrol et
for %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
set "drive=%%i:"
set "output=%USERPROFILE%\Documents\drive_%%i_!year!-!month!-!day!_!hour!h!min!m.html"
if exist !drive!\ (
(
echo ^<!DOCTYPE html^>
echo ^<html lang="tr"^>
echo ^<head^>
echo ^<meta charset="UTF-8"^>
echo ^<title^>!drive!\ İçerik Listesi^</title^>
echo ^<style^>
echo body { font-family: Consolas, monospace; background: #f9f9f9; color: #333; padding: 20px; }
echo h2 { color: #0066cc; }
echo pre { background: #fff; border: 1px solid #ccc; padding: 10px; overflow-x: auto; }
echo ^</style^>
echo ^</head^>
echo ^<body^>
echo ^<h2^>Sürücü: !drive!\ - Listeleme Zamanı: !day!/!month!/!year! !hour!:!min!^</h2^>
echo ^<pre^>
) > "!output!"
:: Sadece ana dizindeki dosya ve klasörleri listele (alt klasörler dahil değil)
dir !drive!\ /b >> "!output!" 2>nul
(
echo ^</pre^>
echo ^</body^>
echo ^</html^>
) >> "!output!"
echo !drive!\ sürücüsü tarandı. HTML dosyası oluşturuldu: !output!
)
)
pause
Ne Yapar?
- A’dan Z’ye kadar her sürücüyü (A, B, C, D, vb.) kontrol eder.
- Eğer sürücü mevcutsa, o sürücünün kök dizinindeki tüm dosya ve klasörleri listeleyerek bir HTML dosyası oluşturur.
- HTML dosyası, her sürücü için, belirli bir tarih ve saat bilgisi ile kaydedilir.
- Çıktı, kullanıcının
Belgeler
klasörüne kaydedilir (drive_C_2025-05-22_12h30m.html
gibi).
Kullanım Alanları:
- USB, harici disk veya sistem sürücüsünün kök dizininde ne olduğunu görmek.
- Sadece kök dizindeki dosya ve klasörleri listelemek.
- Sistem taramaları ve raporlama için kullanışlıdır.
2. list_files_alt_html.bat
– Alt Klasörlerle Detaylı Listeleyici (HTML Formatında)
Amaç:
Bu dosya, bilgisayarınızdaki her bir sürücüyü tarayarak tüm klasör ve alt klasörleri içeren dosya ve klasörlerin listesini çıkarır. Yani, sadece kök dizindeki öğeleri değil, tüm alt dizinlerdeki dosyaları da içerir. HTML formatında çıktı oluşturur.
Kod:
@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion
:: Tarih ve saat bilgisini al
for /f "tokens=1-4 delims=/ " %%a in ('date /t') do (
set day=%%a
set month=%%b
set year=%%c
)
for /f "tokens=1-2 delims=: " %%a in ("%time%") do (
set hour=%%a
set min=%%b
)
:: Sürücü harflerini A'dan Z'ye kontrol et
for %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
set "drive=%%i:"
set "output=%USERPROFILE%\Documents\drive_%%i_!year!-!month!-!day!_!hour!h!min!m.html"
if exist !drive!\ (
(
echo ^<!DOCTYPE html^>
echo ^<html lang="tr"^>
echo ^<head^>
echo ^<meta charset="UTF-8"^>
echo ^<title^>!drive!\ İçerik Listesi^</title^>
echo ^<style^>
echo body { font-family: Consolas, monospace; background: #f9f9f9; color: #333; padding: 20px; }
echo h2 { color: #0066cc; }
echo pre { background: #fff; border: 1px solid #ccc; padding: 10px; overflow-x: auto; }
echo ^</style^>
echo ^</head^>
echo ^<body^>
echo ^<h2^>Sürücü: !drive!\ - Listeleme Zamanı: !day!/!month!/!year! !hour!:!min!^</h2^>
echo ^<pre^>
) > "!output!"
:: Alt klasörler dahil tüm içeriği listele
dir !drive!\ /s /b >> "!output!" 2>nul
(
echo ^</pre^>
echo ^</body^>
echo ^</html^>
) >> "!output!"
echo !drive!\ sürücüsü tarandı. HTML dosyası oluşturuldu: !output!
)
)
pause
Ne Yapar?
- A’dan Z’ye kadar her sürücüyü kontrol eder.
- Eğer sürücü mevcutsa, o sürücünün kök dizinindeki ve alt klasörlerindeki tüm dosya ve klasörleri listeleyerek bir HTML dosyası oluşturur.
- HTML dosyası, her sürücü için belirli bir tarih ve saat bilgisi ile kaydedilir.
- Çıktı, yine kullanıcının
Belgeler
klasörüne kaydedilir.
Kullanım Alanları:
- Sistem genelinde tüm dosya ve klasörlerin detaylı listesini almak.
- Yedekleme, analiz veya dosya yönetimi için kullanışlıdır.
- Alt klasörlere kadar her şeyin kaydını tutmak isteyen kullanıcılar için idealdir.
İçeriklerin Kaydedildiği Dizin:
Bu iki batch dosyasının çıktıları, her bir sürücünün içeriğinin listelenmesinin ardından, %USERPROFILE%\Documents dizininde saklanır. %USERPROFILE%
çevresel değişkeni, her kullanıcının Windows sistemindeki kişisel dizinini belirtir. Bu durumda, çıktılar Belgeler yerine Documents klasöründe oluşturulacak ve her sürücü için ayrı bir dosya ismi ile kaydedilecektir. Dosya isimleri, sürücü harfi, tarih ve saat bilgilerini içerecek şekilde benzersiz olacaktır.
Örneğin:
- C: sürücüsünün dosya listesi,
drive_C_2025-05-22_15h30m.html
gibi bir dosya adıyla Documents klasörünüzde yer alacaktır. - D: sürücüsünün dosya listesi,
drive_D_2025-05-22_15h30m.html
şeklinde kaydedilecektir.
Bu sayede her sürücüye ait içerikler tarih ve saat bilgileriyle sıralanmış ve kolayca erişilebilir olacaktır.
Not: Eğer belirli bir dosya veya dizin kaybolur veya hatalıysa, çıktıyı Documents klasöründe kontrol edebilir ve her sürücünün içeriklerini HTML formatında rahatça inceleyebilirsiniz.
Neden Kullanılmalı?
Bu tür batch dosyaları:
- Manuel gezinti yerine otomatik tarama sağlar.
- Sistem yöneticileri için zaman kazandırır.
- Dosya sayımı, klasör analizi veya yedekleme işlemleri öncesi ön bilgi sağlar.
- Eğitim, raporlama veya arşivleme gibi alanlarda faydalıdır.
Eğer siz de Windows ortamında otomatik klasör ve dosya listelemesi yapmak istiyorsanız bu iki .bat
dosyasını rahatlıkla kullanabilirsiniz. Hem basit, hem hızlı, hem de oldukça faydalı!