BAT-Datei erstellen: So geht’s in Windows 11 und 10

BAT-Datei erstellen in Windows 11 und 10: Erfahren Sie, wie Sie eine Batch-Datei mit dem Texteditor anlegen, richtig speichern und erfolgreich ausführen.

BAT-Datei (Batch-Datei) erstellen: So geht’s in Windows 11 und 10

Eine BAT-Datei (Batch-Datei) ermöglicht es Ihnen, mehrere Windows-Befehle automatisch hintereinander auszuführen. Statt dieselben Schritte täglich manuell zu wiederholen, genügt künftig ein Doppelklick.

Dieser Artikel zeigt Ihnen Schritt für Schritt, wie Sie eine BAT-Datei in Windows 10 und Windows 11 erstellen, bearbeiten und sinnvoll einsetzen – von den Grundlagen bis zu praktischen Beispielen.

Was ist eine BAT-Datei überhaupt?

Eine BAT-Datei – kurz für Batch-Datei – ist eine einfache Textdatei mit der Dateiendung .bat. Sie enthält eine Abfolge von Befehlen, die Windows in der Eingabeaufforderung (cmd.exe) der Reihe nach verarbeitet. Der Begriff „Batch“ stammt aus dem Englischen und bedeutet sinngemäß „Stapelverarbeitung“.

Bereits seit den frühen DOS-Zeiten sind Batch-Dateien ein wichtiges Werkzeug für Anwender und Systemadministratoren. Deshalb funktionieren sie heute noch genauso wie damals – sowohl unter Windows 10 als auch unter Windows 11.

Typische Einsatzbereiche sind außerdem:

  • Automatisches Kopieren und Verschieben von Dateien
  • Regelmäßige Datensicherungen ohne zusätzliche Software
  • Systempflege, etwa das Leeren des Papierkorbs oder des Temp-Ordners
  • Netzwerkdiagnosen, zum Beispiel Ping-Tests oder IP-Konfigurationsabfragen
  • Programmstarts, bei denen mehrere Anwendungen gleichzeitig geöffnet werden sollen

Zudem eignen sich BAT-Dateien hervorragend als Einstieg in die Windows-Automatisierung – einfacher und zugänglicher als PowerShell-Skripte oder andere Skriptsprachen.

BAT-Datei erstellen: Die Schritt-für-Schritt-Anleitung

Das Erstellen einer BAT-Datei erfordert keine zusätzliche Software. Allerdings sollten Sie auf eine wichtige Einstellung achten: Dateinamenerweiterungen müssen sichtbar sein, damit Sie die Endung .bat korrekt vergeben können.

Schritt 1: Dateinamenerweiterungen einblenden

Standardmäßig blendet Windows bekannte Dateiendungen aus. Deshalb müssen Sie diese zuerst einschalten:

  1. Öffnen Sie den Windows-Explorer (Tastenkombination: Win + E).
  2. Klicken Sie in Windows 11 oben auf „Ansicht“, dann auf „Anzeigen“ und schließlich auf „Dateinamenerweiterungen“. In Windows 10 wählen Sie stattdessen das Menü „Ansicht“ und setzen dort den Haken bei „Dateinamenerweiterungen“.
  3. Anschließend sehen Sie bei allen Dateien die vollständige Endung, also zum Beispiel dokument.txt statt nur dokument.

Schritt 2: Eine neue Textdatei anlegen

Navigieren Sie nun in den Ordner, in dem Ihre BAT-Datei gespeichert werden soll. Klicken Sie dort mit der rechten Maustaste auf eine freie Fläche und wählen Sie „Neu“„Textdokument“. Windows legt daraufhin eine Datei namens Neue Textdatei.txt an.

Wichtig: Benennen Sie die Datei sofort um. Löschen Sie dabei den gesamten Dateinamen inklusive der Endung .txt und ersetzen Sie ihn durch Ihren gewünschten Namen mit der Endung .bat, zum Beispiel mein-skript.bat. Windows zeigt eine Warnmeldung, dass sich die Datei durch die Umbenennung ändern könnte – bestätigen Sie diese mit „Ja“.

Schritt 3: Inhalt mit dem Editor bearbeiten

Klicken Sie jetzt mit der rechten Maustaste auf Ihre neu erstellte BAT-Datei und wählen Sie „Mit Editor öffnen“ (oder in Windows 11: „Weitere Optionen anzeigen“„Öffnen mit“„Editor“). Alternativ können Sie auch den Editor (Notepad) zuerst öffnen und danach die Datei über „Datei“„Öffnen“ auswählen.

Tragen Sie nun Ihre Befehle ein – einen pro Zeile. Ein einfaches Beispiel:

@echo off
echo Hallo! Das Skript läuft.
pause

Speichern Sie anschließend mit der Tastenkombination Strg + S.

Schritt 4: BAT-Datei ausführen

Doppelklicken Sie auf Ihre Datei, um sie auszuführen. Windows öffnet daraufhin ein Eingabeaufforderungsfenster und verarbeitet die Befehle nacheinander. Möchten Sie die Datei mit Administratorrechten ausführen – was für bestimmte Systembefehle notwendig ist –, klicken Sie stattdessen mit der rechten Maustaste auf die Datei und wählen „Als Administrator ausführen“.

Den richtigen Editor verwenden

Grundsätzlich reicht der Windows-Editor (Notepad) vollkommen aus, um BAT-Dateien zu schreiben. Er ist vorinstalliert, startet sofort und verarbeitet einfachen Text ohne versteckte Formatierung.

Für umfangreichere Skripte empfehlen sich jedoch erweiterte Editoren. Besonders bewährt hat sich dabei Notepad++, ein kostenloser Editor, den Sie unter notepad-plus-plus.org herunterladen können. Notepad++ bietet:

  • Syntaxhervorhebung für Batch-Dateien (Befehle, Variablen und Kommentare werden farblich markiert)
  • Zeilennummern, die die Fehlersuche erheblich erleichtern
  • Automatisches Einrücken und Suchen-und-Ersetzen-Funktionen
  • Keine Änderung der Zeilenenden, was bei Batch-Dateien wichtig ist

Außerdem eignet sich Visual Studio Code (kostenlos unter code.visualstudio.com) mit der Erweiterung „Batch Rename“ oder dem integrierten Batch-Sprachpaket hervorragend, falls Sie ohnehin bereits damit arbeiten. Jedoch ist Notepad++ für reine BAT-Dateien die schlankere und schnellere Wahl.

Achtung: Verwenden Sie niemals Microsoft Word oder andere Textverarbeitungsprogramme zum Bearbeiten von BAT-Dateien. Diese Programme fügen unsichtbare Formatierungszeichen ein, die das Skript beim Ausführen beschädigen.

Die wichtigsten Befehle für BAT-Dateien

Damit Ihre erste BAT-Datei auch tatsächlich nützlich ist, sollten Sie die grundlegenden Befehle kennen. Deshalb stellt dieser Abschnitt die wichtigsten vor:

Steuerungsbefehle

@echo off – Dieser Befehl sollte in fast jeder BAT-Datei ganz oben stehen. Er unterdrückt die Anzeige der einzelnen Befehle während der Ausführung, sodass nur noch die tatsächlichen Ausgaben erscheinen. Das @-Zeichen bewirkt zusätzlich, dass auch dieser Befehl selbst nicht angezeigt wird.

echo – Gibt Text auf dem Bildschirm aus. Zum Beispiel zeigt echo Backup abgeschlossen genau diese Meldung an. echo. (mit einem Punkt) erzeugt eine Leerzeile.

pause – Hält das Skript an und wartet auf einen Tastendruck. Besonders nützlich am Ende eines Skripts, damit das Fenster nicht sofort verschwindet.

cls – Löscht den Bildschirminhalt der Eingabeaufforderung.

rem – Fügt einen Kommentar ein, der nicht ausgeführt wird. Zum Beispiel: rem Dies ist eine Erklärung. Alternativ funktioniert auch :: als Kommentarzeichen.

Datei- und Ordnerbefehle

copy – Kopiert Dateien. Beispiel: copy C:\Quelle\datei.txt D:\Ziel\ kopiert datei.txt in den Zielordner.

move – Verschiebt Dateien. Funktioniert genauso wie copy, löscht jedoch die Originaldatei.

del – Löscht Dateien. del C:\Temp\*.tmp löscht zum Beispiel alle .tmp-Dateien im Temp-Ordner.

mkdir (kurz: md) – Erstellt einen neuen Ordner. mkdir D:\Backup\2026 legt den Ordner 2026 an.

rmdir (kurz: rd) – Löscht einen Ordner. Mit dem Zusatz /s /q werden auch Unterordner und Dateien ohne Rückfrage gelöscht.

xcopy – Erweiterter Kopierbefehl, der auch Unterordner kopiert. xcopy C:\Quelle D:\Ziel /e /i kopiert den gesamten Ordnerinhalt inklusive Unterordner.

robocopy – Noch leistungsfähiger als xcopy und deshalb besonders für Datensicherungen empfohlen. Der Befehl robocopy C:\Dokumente D:\Backup\Dokumente /mir erstellt eine vollständige Spiegelung des Quellordners.

Systemvariablen und Navigation

cd – Wechselt das aktuelle Verzeichnis. cd C:\Users\Benutzer\Desktop navigiert zum Desktop.

dir – Listet den Inhalt des aktuellen Verzeichnisses auf.

set – Setzt oder zeigt Umgebungsvariablen. Windows stellt außerdem nützliche vordefinierte Variablen bereit, zum Beispiel:

  • %USERPROFILE% – Pfad zum Benutzerordner (z. B. C:\Users\Benutzer)
  • %TEMP% – Pfad zum temporären Ordner
  • %SYSTEMROOT% – Windows-Verzeichnis (meist C:\Windows)
  • %DATE% und %TIME% – aktuelles Datum und aktuelle Uhrzeit

Ablaufsteuerung

if – Überprüft eine Bedingung. Zum Beispiel: if exist C:\datei.txt echo Datei gefunden

goto – Springt zu einer Sprungmarke im Skript. Sprungmarken werden mit einem Doppelpunkt definiert, etwa :start.

for – Führt einen Befehl für mehrere Elemente aus, etwa für alle Dateien in einem Ordner.

exit – Beendet das Skript. Mit exit /b wird nur das aktuelle Batch-Skript beendet, nicht das gesamte Eingabeaufforderungsfenster.

Praktische Beispiele für BAT-Dateien

Theorie ist gut – deshalb folgen nun konkrete, sofort einsetzbare Beispiele.

Beispiel 1: Temporäre Dateien löschen

@echo off
echo Temporäre Dateien werden gelöscht...
del /s /q "%TEMP%\*.*"
rd /s /q "%TEMP%"
mkdir "%TEMP%"
echo Fertig!
pause

Dieses Skript löscht alle Dateien im temporären Ordner und legt ihn anschließend neu an. Führen Sie es mit Administratorrechten aus, da einige Temp-Dateien schreibgeschützt sein können.

Beispiel 2: Automatisches Backup von Dokumenten

@echo off
set QUELLE=%USERPROFILE%\Documents
set ZIEL=D:\Backup\Dokumente_%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%
echo Backup wird erstellt...
robocopy "%QUELLE%" "%ZIEL%" /e /r:3 /w:5
echo Backup abgeschlossen: %ZIEL%
pause

Dieses Skript sichert den Dokumentenordner des aktuellen Benutzers in einen datumsbeschrifteten Zielordner auf Laufwerk D:. Dank robocopy werden außerdem nur geänderte Dateien übertragen, falls der Zielordner bereits existiert.

Beispiel 3: Netzwerkdiagnose

@echo off
echo === Netzwerkdiagnose ===
echo.
echo Ping-Test zu Google DNS:
ping 8.8.8.8 -n 4
echo.
echo IP-Konfiguration:
ipconfig
echo.
pause

Nützlich, um schnell festzustellen, ob eine Internetverbindung besteht und welche IP-Adresse vergeben wurde.

Beispiel 4: Mehrere Programme gleichzeitig starten

@echo off
start "" "C:\Program Files\Mozilla Firefox\firefox.exe"
start "" "C:\Program Files\Notepad++\notepad++.exe"
start "" "C:\Windows\System32\calc.exe"

Dieses kurze Skript öffnet Firefox, Notepad++ und den Taschenrechner auf einmal. Besonders praktisch ist es als Arbeitsumgebung beim Start des Computers. Der Befehl start "" startet das jeweilige Programm dabei im Hintergrund, ohne auf dessen Beendigung zu warten.

Beispiel 5: Netzlaufwerk verbinden

@echo off
echo Verbinde Netzlaufwerk...
net use Z: \\Server\Freigabe /persistent:yes
echo Netzlaufwerk Z: verbunden.
pause

Ersetzen Sie \\Server\Freigabe durch den tatsächlichen UNC-Pfad Ihres Netzlaufwerks. Zudem können Sie /persistent:no verwenden, wenn die Verbindung nur für die aktuelle Sitzung gelten soll.

BAT-Datei automatisch ausführen (Taskplaner)

Eine BAT-Datei manuell zu starten ist bequem. Noch praktischer ist es jedoch, wenn sie automatisch zu bestimmten Zeiten ausgeführt wird – zum Beispiel täglich um Mitternacht für ein Backup.

Der empfohlene Weg dafür ist der Windows-Taskplaner (Task Scheduler):

  1. Öffnen Sie den Taskplaner: Drücken Sie Win + R, tippen Sie taskschd.msc und bestätigen Sie mit Enter.
  2. Klicken Sie rechts auf „Einfache Aufgabe erstellen“.
  3. Geben Sie der Aufgabe einen Namen, zum Beispiel „Tägliches Backup“.
  4. Legen Sie den Auslöser fest, etwa „Täglich“ um 23:00 Uhr.
  5. Wählen Sie als Aktion „Programm starten“ und navigieren Sie zur Ihrer .bat-Datei.
  6. Falls das Skript Administratorrechte benötigt, aktivieren Sie zusätzlich die Option „Mit höchsten Berechtigungen ausführen“ in den Eigenschaften der Aufgabe.

Außerdem stehen folgende Auslöser zur Verfügung: beim Systemstart, bei Anmeldung, bei einem bestimmten Ereignis im Systemprotokoll oder bei Leerlauf des Computers.

BAT-Datei bearbeiten und debuggen

Gelegentlich funktioniert ein Skript nicht wie erwartet. Deshalb sollten Sie einige Techniken zur Fehlersuche kennen.

Bearbeiten einer vorhandenen BAT-Datei

Doppelklicken würde die Datei direkt ausführen. Um sie stattdessen zu bearbeiten, klicken Sie mit der rechten Maustaste darauf und wählen „Bearbeiten“ oder „Mit Notepad++ öffnen“ (falls installiert). In Windows 11 müssen Sie gegebenenfalls zuerst auf „Weitere Optionen anzeigen“ klicken, um den klassischen Kontextmenüpunkt zu sehen.

Fehlersuche durch echo

Entfernen Sie vorübergehend @echo off oder fügen Sie nach jedem kritischen Befehl eine echo-Ausgabe ein. So sehen Sie genau, bis zu welchem Punkt das Skript erfolgreich läuft.

Fehlercodes auswerten

Viele Befehle geben nach der Ausführung einen Fehlercode zurück, der in der Variable %ERRORLEVEL% gespeichert ist. 0 bedeutet Erfolg, jeder andere Wert deutet auf einen Fehler hin. Deshalb empfiehlt es sich, nach kritischen Befehlen Folgendes einzufügen:

if %ERRORLEVEL% neq 0 (
    echo Fehler aufgetreten! Code: %ERRORLEVEL%
    pause
    exit /b %ERRORLEVEL%
)

Ausgabe in eine Logdatei umleiten

Zudem können Sie die Ausgabe eines Skripts in eine Textdatei schreiben, um sie später auszuwerten:

mein-skript.bat >> C:\Logs\backup.log 2>&1

>> hängt die Ausgabe an eine bestehende Logdatei an. 2>&1 leitet außerdem Fehlermeldungen in dieselbe Datei um.

Sicherheitshinweise beim Umgang mit BAT-Dateien

BAT-Dateien sind mächtig – deshalb sollten Sie einige Sicherheitsaspekte beachten:

Öffnen Sie keine BAT-Dateien aus unbekannten Quellen. Da sie direkt Systembefehle ausführen, können schädliche Skripte erheblichen Schaden anrichten – von gelöschten Dateien bis hin zur Manipulation von Systemeinstellungen. Deshalb blockiert Windows SmartScreen in neueren Versionen unbekannte .bat-Dateien mit einer Warnung. Ignorieren Sie diese Warnung nur bei Dateien, deren Inhalt Sie selbst geprüft haben.

Testen Sie Skripte zuerst in einer sicheren Umgebung. Insbesondere Befehle wie del, rmdir /s oder format sollten Sie niemals ungeprüft ausführen, da sie Daten unwiderruflich löschen.

Arbeiten Sie ohne Administratorrechte, solange es nicht notwendig ist. Für einfache Aufgaben wie das Kopieren eigener Dateien oder das Starten von Programmen sind keine erhöhten Rechte erforderlich.

BAT-Datei vs. PowerShell: Wann welches Tool?

Häufig stellt sich die Frage, ob eine BAT-Datei oder ein PowerShell-Skript (.ps1) die bessere Wahl ist. Beide haben ihre Stärken:

BAT-Dateien sind ideal, wenn Sie:

  • einfache, schnell erstellte Automatisierungen benötigen
  • Kompatibilität mit sehr alten Windows-Versionen sicherstellen möchten
  • keine Vorkenntnisse in Skriptsprachen haben
  • einen Doppelklick als sofortige Ausführung bevorzugen

PowerShell-Skripte sind hingegen besser geeignet, wenn Sie:

  • komplexe Logik mit Schleifen, Fehlerbehandlung und Objektorientierung benötigen
  • mit modernen Windows-APIs und .NET-Funktionen arbeiten möchten
  • Netzwerk-, Active-Directory- oder Cloud-Aufgaben automatisieren

Für viele alltägliche Aufgaben – Dateien sichern, Ordner bereinigen, Programme starten – reichen BAT-Dateien jedoch vollkommen aus. Zudem lässt sich eine BAT-Datei notfalls auch PowerShell-Befehle aufrufen lassen: powershell -Command "Get-Process" funktioniert problemlos innerhalb einer .bat-Datei.

Mario
Mario

Mario schreibt bei Tippsling.de über Technik, Spiele, DIY und digitale Alltagsthemen. Sein Schwerpunkt liegt auf verständlichen Anleitungen zu Sicherheit, Windows, Apps und praktischen Problemlösungen – ergänzt um Ratgeber zu Gaming- und DIY-Themen.