15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın
30.10.2024
1 +1

BAT Dosyası Nasıl Oluşturulur ve Kullanılır: Windows Otomasyonu için Eksiksiz Kılavuz

Toplu iş dosyaları, Windows kullanıcıları ve sistem yöneticileri için mevcut olan en hafife alınan üretkenlik araçlarından biridir. İster yerel bir iş istasyonunu yönetiyor olun, ister uzak bir VPS Hosting ortamını yönetiyor olun, BAT dosyalarında uzmanlaşmak tekrarlayan görevlere harcadığınız zamanı önemli ölçüde azaltabilir. Bu kapsamlı kılavuz, ilk toplu iş dosyanızı oluşturmaktan otomatik işleri zamanlamaya ve gelişmiş betik yazma tekniklerini kullanmaya kadar bilmeniz gereken her şeyi kapsamaktadır.

BAT Dosyası Nedir?

BAT dosyası (batch file yani toplu iş dosyasının kısaltması), Windows Komut İstemi’nde (cmd.exe) yorumlanan ve yürütülen bir dizi komut içeren .bat uzantılı düz metin bir betiktir. Bir BAT dosyası çalıştırdığınızda, Windows her komut satırını yukarıdan aşağıya okur ve bunları sırayla yürütür — aksi takdirde manuel giriş gerektiren bir iş akışını etkin biçimde otomatikleştirir.

Neden BAT Dosyaları Kullanılır?

  • Tekrarlayan görevleri otomatikleştirin — dosya yedekleme, günlük temizleme, klasör düzenleme
  • Sistem yönetimini kolaylaştırın — kullanıcı hesabı yönetimi, ortam yapılandırması
  • Çok adımlı süreçleri başlatın — hizmetleri başlatın, betikleri çalıştırın, uygulamaları sırayla açın
  • Gözetimsiz işlemleri zamanlayın — tam otomasyon için Görev Zamanlayıcı ile birleştirin
  • İnsan hatalarını azaltın — her seferinde tutarlı, tekrarlanabilir yürütme

BAT dosyaları ek yazılım veya programlama ortamı gerektirmez. Notepad ve Komut İstemi bulunan herhangi bir Windows makinesi bunları anında oluşturabilir ve çalıştırabilir.

BAT Dosyası Nasıl Oluşturulur: Adım Adım

Adım 1: Bir Metin Düzenleyici Açın

Herhangi bir düz metin düzenleyici kullanabilirsiniz. Windows’a yerleşik en basit seçenek Notepad‘dir.

  • Windows + R tuşlarına basın, notepad yazın ve Enter‘a basın

Sözdizimi vurgulamalı daha gelişmiş düzenleme için Notepad++ veya Visual Studio Code kullanmayı düşünün — her ikisi de ücretsiz ve toplu betik yazımı için mükemmeldir.

Adım 2: Komutlarınızı Yazın

Toplu iş dosyasının yürütmesini istediğiniz komutları yazın. Aşağıda birkaç temel komutu gösteren basit bir örnek verilmiştir:

@echo off
echo Hello, welcome to your first BAT file!
mkdir NewFolder
pause

Satır satır açıklama:

KomutNe Yapar
@echo offKomut yankılamasını bastırır — yalnızca çıktı gösterilir, komutların kendisi değil
echo Hello...Komut İstemi penceresine bir mesaj yazdırır
mkdir NewFolderGeçerli yolda NewFolder adlı yeni bir dizin oluşturur
pauseYürütmeyi durdurur ve kapanmadan önce kullanıcının herhangi bir tuşa basmasını bekler

Adım 3: Dosyayı .bat Uzantısıyla Kaydedin

Bu adım kritiktir — dosyayı .txt olarak kaydederseniz, toplu iş betiği olarak çalışmaz.

  1. Notepad’de Dosya → Farklı Kaydet‘e gidin
  2. Kayıt türü açılır menüsünde Tüm Dosyalar (*.*) seçeneğini seçin
  3. Dosyanızı .bat uzantısıyla adlandırın (örn. my_script.bat)
  4. Tercih ettiğiniz kayıt konumunu seçin ve Kaydet‘e tıklayın

Toplu iş dosyanız artık çalıştırılmaya hazırdır.

BAT Dosyası Nasıl Çalıştırılır

Yöntem 1: Dosya Gezgini’nde Çift Tıklama

Dosya Gezgini’nde .bat dosyanıza gidin ve üzerine çift tıklayın. Bir Komut İstemi penceresi açılacak, komutları yürütecek ve çıktıyı gösterecektir. pause komutunu eklediyseniz, bir tuşa basana kadar pencere açık kalır.

Yöntem 2: Komut İstemi’nden Çalıştırma

Bu yöntem size daha fazla kontrol sağlar ve sorun giderme için tercih edilir.

  1. Komut İstemi’ni açın: Windows + R tuşlarına basın, cmd yazın, Enter‘a basın
  2. cd komutunu kullanarak BAT dosyanızı içeren dizine gidin:
cd C:pathtoyourbatfile
  1. Dosya adını yazın ve Enter‘a basın:
my_script.bat

Yöntem 3: Yönetici Olarak Çalıştırma

Sistem ayarlarını değiştiren veya korumalı dizinlere erişen betikler için .bat dosyasına sağ tıklayın ve Yönetici olarak çalıştır‘ı seçin. Bu, özellikle sunucu ortamlarını yönetirken veya bir Dedicated Server üzerinde sistem düzeyinde ayarları yapılandırırken önemlidir.

Temel BAT Dosyası Komutları Referansı

Aşağıda en yaygın kullanılan toplu iş dosyası komutlarının pratik bir referansı verilmiştir:

echo — Çıktı Görüntüleme

echo This message will appear in the Command Prompt.
echo.

> echo. (nokta ile) boş bir satır yazdırır — çıktıyı biçimlendirmek için kullanışlıdır.

pause — Kullanıcı Girişini Bekleme

pause

*”Devam etmek için herhangi bir tuşa basın . . .”* mesajını görüntüler ve kullanıcı yanıt verene kadar yürütmeyi durdurur.

cls — Ekranı Temizleme

cls

Komut İstemi penceresindeki tüm önceki çıktıyı temizler — betikleri görsel olarak düzenli tutmak için kullanışlıdır.

mkdir — Dizin Oluşturma

mkdir C:BackupsProjectFiles

Belirtilen dizini oluşturur. Üst dizinler mevcut değilse, /s bayrağıyla md kullanın veya bunları sırayla oluşturun.

del — Dosyaları Silme

del C:Temp*.log

Belirtilen kalıpla eşleşen dosyaları siler. Dikkatli kullanın — silinen dosyalar Geri Dönüşüm Kutusu’nu atlar.

copy — Dosyaları Kopyalama

copy C:sourcefile.txt C:destination

Tek bir dosyayı bir konumdan diğerine kopyalar.

xcopy — Genişletilmiş Kopyalama

xcopy C:Source C:Destination /s /e /h /i /y
copy‘den daha güçlüdür — tüm dizin ağaçlarını, gizli dosyaları ve alt dizinleri işler.




Bayrak
Anlamı




/s
Alt dizinleri kopyalar (boş olanlar hariç)


/e
Boş olanlar dahil tüm alt dizinleri kopyalar


/h
Gizli ve sistem dosyalarını dahil eder


/i
Hedefin bir dizin olduğunu varsayar


/y
Üzerine yazma onay istemlerini bastırır




ren — Dosya veya Klasörleri Yeniden Adlandırma
ren oldname.txt newname.txt
start — Program Başlatma
start notepad.exe
start "" "C:Program FilesMyAppapp.exe"
Yeni bir işlem penceresinde bir program veya dosya açar.
if — Koşullu Mantık
if exist C:Backupsbackup.zip echo Backup file found.
if not exist C:Logs mkdir C:Logs
Koşullu yürütmeyi etkinleştirir — akıllı toplu iş betikleri yazmak için en güçlü araçlardan biridir.
goto — Bir Etikete Atlama
goto :start

:start
echo Script started.
Betik yürütmesini etiketlenmiş bir bölüme yönlendirir — döngüler ve hata işleme için kullanışlıdır.
exit — Betiği Sonlandırma
exit
exit /b 0
exit /b yalnızca Komut İstemi penceresini kapatmadan mevcut toplu iş betiğinden çıkar.
BAT Dosyalarında Değişken Kullanımı
Değişkenler, toplu iş betiklerinizi dinamik ve yeniden kullanılabilir hale getirir. Toplu iş betiklerinde değişkenler set ile tanımlanır ve değişken adı yüzde işaretleriyle (%variable%) sarılarak erişilir.
Temel Değişken Örneği
@echo off
set username=Alice
set backup_path=C:Backups
echo Hello, %username%!
echo Your backup will be saved to: %backup_path%
pause
Komut Satırı Argümanlarını Değişken Olarak Kullanma
Komut İstemi’nden çalıştırırken BAT dosyasına argümanlar iletebilirsiniz:
@echo off
echo First argument: %1
echo Second argument: %2
pause
Şu şekilde çalıştırın: my_script.bat Hello World

Bu şunu çıktılar:

First argument: Hello
Second argument: World

Ortam Değişkenleri

Windows, betiklerinizde doğrudan kullanabileceğiniz yerleşik ortam değişkenleri sağlar:

echo Current user: %USERNAME%
echo Windows directory: %WINDIR%
echo System drive: %SYSTEMDRIVE%
echo Temp folder: %TEMP%

Pratik Örnek: Otomatik Dosya Yedekleme Betiği

İşte Belgeler klasörünün günlük yedeklemesini otomatikleştiren, yedek klasör adına zaman damgası ekleyen ve sonucu günlüğe kaydeden gerçek dünya BAT dosyası.

@echo off
:: ============================================
:: Automated Backup Script
:: ============================================

set source=C:Users%USERNAME%Documents
set destination=C:Backups

:: Create a timestamped folder name
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set datetime=%%I
set datestamp=%datetime:~0,4%-%datetime:~4,2%-%datetime:~6,2%
set backup_folder=%destination%Backup_%datestamp%

echo Starting backup process...
echo Source: %source%
echo Destination: %backup_folder%
echo.

:: Create destination if it doesn't exist
if not exist "%destination%" mkdir "%destination%"

:: Perform the backup
xcopy "%source%" "%backup_folder%" /s /e /h /i /y

:: Confirm completion
echo.
echo Backup completed successfully on %datestamp%.
echo Results saved to: %backup_folder%

pause

Bu betik hemen kullanılabilir ve değişkenleri, koşullu mantığı, zaman damgalamasını ve xcopy‘yi tek bir pratik iş akışında göstermektedir.

BAT Dosyalarında Hata İşleme

Sağlam toplu iş betikleri hataları zarif bir şekilde işlemelidir. Önceki komutun başarılı olup olmadığını kontrol etmek için ERRORLEVEL değişkenini kullanın.

@echo off
xcopy C:Source C:Destination /s /e /y

if %ERRORLEVEL% == 0 (
    echo Copy completed successfully.
) else (
    echo ERROR: Copy failed with error code %ERRORLEVEL%.
    echo Please check the source and destination paths.
)

pause

Yaygın ERRORLEVEL değerleri:

  • 0 — Başarılı
  • 1 — Dosya bulunamadı (xcopy için)
  • 2 — Kullanıcı iptal etmek için Ctrl+C’ye bastı
  • 4 — Başlatma hatası
  • 5 — Disk yazma hatası

Görev Zamanlayıcı ile BAT Dosyası Zamanlama

Toplu iş betiklerinin en güçlü özelliklerinden biri, betiklerin otomatik olarak çalışacak şekilde zamanlanabilmesidir — manuel müdahale gerekmez. Bu, özellikle Shared Web Hosting veya özel altyapı gibi ortamlardaki sunucu bakım görevleri için değerlidir.

Adım Adım: BAT Dosyası Zamanlama

  1. Windows + S tuşlarına basın ve Görev Zamanlayıcı‘yı arayın, ardından açın
  2. Sağ taraftaki Eylemler bölmesinde Temel Görev Oluştur‘a tıklayın
  3. Göreviniz için bir Ad ve isteğe bağlı Açıklama girin, ardından İleri‘ye tıklayın
  4. Bir Tetikleyici seçin — Günlük, Haftalık, Aylık veya sistem başlangıcında/oturum açmada — ardından İleri‘ye tıklayın
  5. Tetikleyici için belirli saat ve tekrarlama ayarını yapın, ardından İleri‘ye tıklayın
  6. Eylem altında Program başlat‘ı seçin ve İleri‘ye tıklayın
  7. Gözat‘a tıklayın ve .bat dosyanıza gidin
  8. Zamanlanan görevi kaydetmek için Son‘a tıklayın

BAT dosyanız artık tanımladığınız zamanlamaya göre otomatik olarak çalışacaktır — hiçbir kullanıcı oturum açmamış olsa bile (uygun izinlerle yapılandırıldığında).

Profesyonel İpucu: Zamanlanan Görevleri Yönetici Olarak Çalıştırma

Göreviniz için Görev Zamanlayıcı özelliklerinde, özellikle sistem düzeyindeki işlemler için betiğin ihtiyaç duyduğu izinlere sahip olmasını sağlamak amacıyla “En yüksek ayrıcalıklarla çalıştır” seçeneğini işaretleyin.

Gelişmiş Teknikler: Döngüler ve Alt Rutinler

FOR Döngüsü — Dosyalar Üzerinde Yineleme

@echo off
for %%f in (C:Logs*.log) do (
    echo Processing: %%f
    del "%%f"
)
echo All log files deleted.
pause

CALL — Alt Rutin Çalıştırma

@echo off
call :greet Alice
call :greet Bob
exit /b

:greet
echo Hello, %1! Welcome to the system.
exit /b

call‘ı etiketlerle kullanmak, tek bir BAT dosyası içinde modüler, yeniden kullanılabilir kod blokları oluşturmanıza olanak tanır.

Sunucu ve Hosting Ortamları için BAT Dosyaları

Windows Server ortamlarıyla çalışan sistem yöneticileri toplu iş betiklerine sıklıkla şunlar için güvenir:

  • Otomatik günlük döndürme ve temizleme
  • Zamanlanmış veritabanı dökümleri ve yedeklemeler
  • Hizmet izleme ve yeniden başlatma betikleri
  • Kullanıcı hesabı sağlama
  • Dağıtım otomasyonu

Windows tabanlı bir sunucu yönetiyorsanız, toplu iş otomasyonunu güvenilir bir hosting platformuyla eşleştirmek önemlidir. AlexHost’un VPS Hosting planları tam root/yönetici erişimi sağlayarak toplu iş betiklerini kısıtlama olmaksızın dağıtmanıza ve zamanlamanıza tam kontrol sunar. Özel kaynak gerektiren yüksek performanslı iş yükleri için tam donanım kontrolüne sahip Dedicated Servers‘ı keşfedin.

Betik yazma yeteneklerinin yanı sıra grafiksel bir yönetim arayüzünü tercih eden ekipler için VPS with cPanel, her ikisinin de en iyisini sunar — güçlü komut satırı erişimi ile sezgisel web tabanlı kontrol panelinin birleşimi.

Kaçınılması Gereken Yaygın Hatalar

HataÇözüm
Dosyayı .bat yerine .txt olarak kaydetmeFarklı Kaydet’te her zaman “Tüm Dosyalar”ı seçin ve .bat uzantısını kullanın
@echo off‘i unutmaÇıktıyı temiz tutmak için ilk satır olarak ekleyin
Tırnak işareti olmadan dosya yollarında boşluk kullanmaBoşluk içeren yolları her zaman çift tırnak içine alın: "C:My Folderfile.txt"
Zamanlamadan önce betikleri test etmemeÖnce manuel olarak çalıştırın; ERRORLEVEL çıktısını kontrol edin
Onay olmadan yıkıcı komutları çalıştırmadel veya format komutlarından önce pause veya if kontrollerini kullanın
Yollarda kullanıcı adlarını sabit kodlamaBunun yerine %USERNAME% ve %USERPROFILE% ortam değişkenlerini kullanın

Sonuç

BAT dosyaları, Windows ekosisteminde zamansız ve güçlü bir araçtır. Bir programı açan basit tek satırlıklardan hata işleme, zaman damgalama ve zamanlanmış yürütme içeren karmaşık, çok adımlı otomasyon iş akışlarına kadar — toplu iş betikleri, ister kişisel bir iş istasyonunda ister üretim sunucusunda çalışıyor olsun, Windows ortamında çalışan herkes için temel bir beceridir.

Bu kılavuzdan çıkarılacak temel sonuçlar:

  • Herhangi bir metin düzenleyiciyle BAT dosyaları oluşturun ve .bat uzantısıyla kaydedin
  • Temel araç setiniz olarak @echo off, echo, pause, mkdir, xcopy ve if‘i kullanın
  • Dinamik, yeniden kullanılabilir betikler için değişkenlerden ve komut satırı argümanlarından yararlanın
  • Sağlam hata işleme için ERRORLEVEL kontrollerini uygulayın
  • Tam otomatik, gözetimsiz yürütme için Görev Zamanlayıcı ile betikleri zamanlayın
  • Karmaşık iş akışları için for döngüleri ve call alt rutinleri gibi gelişmiş özellikleri kullanın

Otomasyon ihtiyaçlarınız büyüdükçe, toplu iş betiklerinizi güvenilir bir hosting altyapısıyla eşleştirmeyi düşünün. AlexHost, zamanlanmış betiklerinizin ve otomatik iş akışlarınızın günün her saati güvenilir biçimde çalışmasını sağlayan tam yönetici erişimiyle esnek VPS Hosting çözümleri sunar.

15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın