Software-OK
≡... News | ... Home | ... FAQ | Impressum | Kontakt | Gelistet bei | Danke |

  
HOME ► Faq ► FAQ - Batch-Scripts ► ««« »»»

Bilder und Dateien umbenennen, ohne Wenn und Aber, über die Eingabeaufforderung (CMD Batch)!


Der pragmatische Weg zur Bulk-Umbenennung ohne zusätzliche Software, Du hast keine Lust auf grafischen Schnicksack, bloatierte Bilderverwaltungsprogramme oder kostenpflichtige Tools? 

 



Dann ist die Eingabeaufforderung (CMD) mit einem einfachen Batch-Skript (`.bat`) das effizienteste, schnellste und zuverlässigste Werkzeug, um Dutzende oder hunderte Dateien auf einen Schlag umzubenennen – total kontrolliert, total transparent, total nativ unter Windows.


In diesem ausführlichen FAQ zeige ich dir nicht nur den Code für das perfekte Bulk-Rename-Skript, sondern erkläre alle beweglichen Teile, zeige Variationen, gebe Sicherheitstipps und helfe dir, typische Fehler zu vermeiden. Am Ende beherrscht du eine echte Systemadmin-Technik.




1. Das Batch-Skript: "SimpleRename.bat" – Schritt für Schritt



Hier ist ein ausgereiftes Skript, das alle Dateien eines bestimmten Typs in einem Ordner durchnummeriert und einheitlich umbenennt – z. B. perfekt für Kamera-Exporte, Scans oder Downloads.



1. So erstellst du das Skript (keine Vorkenntnisse nötig):
2. Erklärung der einzelnen Zeilen (für Fortgeschrittene und Lernende):
3. Warum sollte ich Batch statt Tools wie BilderView, Adobe Bridge oder PowerToys nutzen?
4. Was macht `setlocal enabledelayedexpansion` – und warum ist es so wichtig?
5. Wie ändere ich das Dateiformat (z. B. PNG, TXT, PDF, MP4)?
6. Kann ich die Nummerierung anpassen (z. B. 0001 oder 1)?
7. Was passiert, wenn Dateinamen Leerzeichen oder Sonderzeichen enthalten?
8. Gibt es einen schnelleren Weg ohne Skript – direkt in der CMD?
9. Kann ich das rückgängig machen (Undo)?
10. Wie kann ich mehrere Dateitypen gleichzeitig umbenennen (z. B. JPG + PNG)?
11. Kann ich das Datum der Datei in den Namen einfügen?
12. Wie umgehe ich die Bestätigungsfragen bei Massenänderungen?
13. Unterstützt Batch auch reguläre Ausdrücke?
14. Variante A: Nur Nummerierung, kein Präfix
15. Variante B: Löschen von unerwünschten Zeichen (z. B. Leerzeichen entfernen)
16. Variante C: Anhängen eines Suffixes an alle Dateien
17. Variante D: Groß-/Kleinschreibung vereinheitlichen (alles klein)








1.) So erstellst du das Skript (keine Vorkenntnisse nötig):




1. Öffne den Zielordner (z. B. `C:\Users\DeinName\Bilder\Urlaub 2024`).
2. Klicke mit rechts → Neu → Textdokument.
3. Benenne es um in `umbenennen.bat` (bestätige die Warnung zur Dateiendung).
4. Rechtsklick auf `umbenennen.bat` → Bearbeiten.
5. Füge folgenden Code ein.
6. Speichern (Strg+S), schließen, Doppelklick zum Ausführen.

@echo off
setlocal enabledelayedexpansion

:: Konfiguration – hier änderst du die Regeln
set "prefix=Urlaub_2024"
set "ext=jpg"
set /a count=1

echo Starte Umbenennung von *.%ext% zu %prefix%_...

for %%f in (*.%ext%) do (
:: Nummer mit führenden Nullen (z. B. 001, 002)
set "num=000!count!"
set "num=!num:~-3!"

echo Umbenennen: "%%f" --^> "%prefix%_!num!.%ext%"
ren "%%f" "%prefix%_!num!.%ext%"

set /a count+=1
)

echo.
echo Fertig! %count% Dateien verarbeitet.
pause




2.) Erklärung der einzelnen Zeilen (für Fortgeschrittene und Lernende):




BefehlWirkung
@echo off Unterdrückt die Anzeige jedes Befehls – sauberere Ausgabe.
setlocal enabledelayedexpansion Erlaubt das Ändern von Variablen innerhalb der Schleife (wichtig für Zähler).
set "prefix=Urlaub_2024" Basisname, der vor die Nummer gesetzt wird.
set "ext=jpg" Dateiendung, die umbenannt werden soll (Groß-/Kleinschreibung egal).
set /a count=1 Startwert für die Nummerierung.
for %%f in (*.%ext%) Durchläuft jede Datei mit passender Endung im aktuellen Ordner.
set "num=000!count!" Erzeugt eine vierstellige Zwischenzahl (z. B. 1 → 0001).
set "num=!num:~-3!" Schneidet die letzten 3 Zeichen raus → dreistellige Nummer (001, 002…).
ren "%%f" "neuerName" Führt die eigentliche Umbenennung durch – sicher durch Anführungszeichen.
pause Hält das Fenster offen, damit du das Ergebnis siehst.





2. FAQ: Massen-Umbenennung mit der CMD (Eingabeaufforderung)






3.) Warum sollte ich Batch statt Tools wie BilderView, Adobe Bridge oder PowerToys nutzen?




Weil es nativ ist. Du musst nichts installieren, nichts konfigurieren, kein Konto anlegen, keine Trial abonnieren. Das Batch-Skript:


- verbraucht keinen zusätzlichen Arbeitsspeicher

- lässt sich perfekt in automatische Abläufe integrieren (z. B. post-download, nightly builds, Backup-Hashing)

- funktioniert auf jedem Windows-Rechner ab XP bis Windows 11, auch im abgesicherten Modus

- ist transparent – du siehst jeden Befehl, keine versteckten Seiteneffekte

- kann problemlos in andere Sprachen (PowerShell, Python, WSH) überführt werden

> Die Eingabeaufforderung ist kein „veraltetes Werkzeug“, sondern eine stabile, portable und hochgradig automatisierbare Plattform.




4.) Was macht `setlocal enabledelayedexpansion` – und warum ist es so wichtig?




Das ist der wichtigste Teil für Schleifen in Batch-Dateien.
Normalerweise liest Windows eine Variable (`%count%`) einmal beim Start der Schleife aus – und nie wieder. Mit `enabledelayedexpansion` kannst du den Wert innerhalb der Schleife ändern und sofort auslesen (erkennbar an den `!` statt `%`).

Falsch (ohne delayedexpansion):
set count=1
for %%f in (*.jpg) do (
ren "%%f" "Bild%count%.jpg"
set /a count+=1   % <- wird nie wirksam innerhalb der Schleife
)

Richtig (mit `!count!`):
setlocal enabledelayedexpansion
set count=1
for %%f in (*.jpg) do (
ren "%%f" "Bild!count!.jpg"
set /a count+=1
)




5.) Wie ändere ich das Dateiformat (z. B. PNG, TXT, PDF, MP4)?




Finde im Skript die Zeile:
set "ext=jpg"
Ändere `jpg` einfach in `png`, `txt`, `pdf`, `mp4`, `docx`, `xlsx` – je nachdem, welche Dateien du bearbeiten willst.

Tipp: Soll das Skript alle Dateien unabhängig von der Endung umbenennen, schreibe:
set "ext=*"
Aber Vorsicht – dann werden auch das Skript selbst (`umbenennen.bat`) und Ordner erfasst. Besser mit einer expliziten Erweiterung arbeiten.




6.) Kann ich die Nummerierung anpassen (z. B. 0001 oder 1)?




Ja, das Steuerungszentrum ist diese Zeile:
set "num=!num:~-3!"

- `-3` bedeutet: dreistellig (001–999)

- Willst du vierstellig (0001–9999), änderst du auf `-4`

- Willst du keine führenden Nullen, ersetzt du die Zeile durch:
set "num=!count!"
(dann wird 1, 2, 3 …)

Achtung: Für vier Stellen musst du auch die initiale Nuller-Reihe anpassen:
set "num=0000!count!"
set "num=!num:~-4!"




7.) Was passiert, wenn Dateinamen Leerzeichen oder Sonderzeichen enthalten?




Das Skript verwendet konsequent Anführungszeichen:

- `"%%f"` beim Lesen

- `"%prefix%_!num!.%ext%"` beim Schreiben

Dadurch werden auch Dateien wie `my holiday foto (1).jpg` korrekt erkannt und umbenannt – ohne `Fehler: Syntax falsch`.

Problematisch sind nur:

- Doppelpunkte `:`

- Fragezeichen `?`

- Schrägstriche `/ \`

- Ersetzungszeichen (durch das Skript aber harmlos)

Wenn solche Zeichen im alten Namen sind, kann es zu Fehlern kommen. Dann vorher mit `rename` oder manuell bereinigen.




8.) Gibt es einen schnelleren Weg ohne Skript – direkt in der CMD?




Ja, für einfache Suffix- oder Endungsänderungen geht es direkt in der Eingabeaufforderung:

ren *.jpg *.webp
Das ändert bei allen JPG‑Dateien nur die Endung zu WEBP, ohne den Basisteil zu verändern.

Oder: Alle TXT-Dateien in LOG-Dateien umwandeln:
ren *.txt *.log

Grenzen:

- Keine Nummerierung

- Keine Präfixe/Suffixe

- Keine Formatierung möglich

Dafür ist das Batch-Skript da.




9.) Kann ich das rückgängig machen (Undo)?




Nein. Die CMD hat kein `Strg+Z`, keinen Papierkorb, kein Historie-Undo.
Sobald `ren` ausgeführt wurde, sind die Dateien endgültig umbenannt – es sei denn, du hast ein Backup.

Mein Rat:
1. Teste das Skript immer erst in einem Kopie-Ordner (z. B. `C:\temp\test`).
2. Oder benenne vorher ein paar Dateien manuell mit `ren` um, um das Verhalten zu prüfen.
3. Oder sichere den Ordner vorher mit einem einfachen Kopierbefehl:
xcopy /E "C:\Quelle" "C:\Backup\Originale"




10.) Wie kann ich mehrere Dateitypen gleichzeitig umbenennen (z. B. JPG + PNG)?




Zwei Wege:

a) Zwei separate Skript-Durchläufe (einfach, sicher).
b) Ein erweitertes Skript mit mehreren Extensions:
setlocal enabledelayedexpansion
set "prefix=Medien"
set /a count=1

for %%e in (jpg png gif bmp) do (
for %%f in (*.%%e) do (
    set "num=000!count!"
    set "num=!num:~-3!"
    ren "%%f" "%prefix%_!num!.%%e"
    set /a count+=1
)
)
Jetzt werden alle Bildformate nacheinander durchnummeriert.




11.) Kann ich das Datum der Datei in den Namen einfügen?




Ja, das geht mit einem kleinen Trick (Datum aus Systemzeit):
set "datum=%date:~6,4%%date:~3,2%%date:~0,2%"
set "neuerName=%datum%_!num!.%ext%"
Ergibt z. B. `20250327_001.jpg`.

Achtung: Das Datumsformat hängt von deinen Regionseinstellungen ab (TT.MM.JJJJ vs. MM/TT/JJJJ). Teste vorher mit `echo %date%`.




12.) Wie umgehe ich die Bestätigungsfragen bei Massenänderungen?




Die CMD fragt standardmäßig nicht nach – außer du verwendest `ren` mit Platzhaltern, die zu Konflikten führen. Unser Skript ist still, schnell und direkt.

Falls du doch jede Aktion bestätigen willst, kannst du `ren` durch `pause` oder `choice` ergänzen – aber dann verlierst du den Massen-Effekt.




13.) Unterstützt Batch auch reguläre Ausdrücke?




Nein, nicht nativ. Batch ist eine einfache Skriptsprache ohne Regex.
Willst du Muster ersetzen (z. B. `IMG_123` → `Foto_123`), brauchst du entweder:


- PowerShell (z. B. `Get-ChildItem | Rename-Item -NewName { $_ -replace "IMG_", "Foto_" }`)

- Oder eine Kombination aus Batch + JScript/Hybrid.

Für reine Sequenznummerierung + Präfix ist Batch aber perfekt.




3. Weitere praktische Batch-Varianten für den Alltag






14.) Variante A: Nur Nummerierung, kein Präfix



set /a count=1
for %%f in (*.jpg) do (
ren "%%f" "!count!.jpg"
set /a count+=1
)
Achtung: Das kann zu Überschreibungen kommen, wenn z. B. `1.jpg` bereits existiert. Besser mit Prefix.




15.) Variante B: Löschen von unerwünschten Zeichen (z. B. Leerzeichen entfernen)



setlocal enabledelayedexpansion
for %%f in (*.*) do (
set "name=%%~nf"
set "name=!name: =!"
ren "%%f" "!name!%%~xf"
)
Entfernt alle Leerzeichen aus Dateinamen – sehr nützlich für Web-Uploads.




16.) Variante C: Anhängen eines Suffixes an alle Dateien



set "suffix=_meinText"
for %%f in (*.jpg) do (
ren "%%f" "%%~nf%suffix%%%~xf"
)
Aus `Bild.jpg` wird `Bild_meinText.jpg`.




17.) Variante D: Groß-/Kleinschreibung vereinheitlichen (alles klein)



for %%f in (*.*) do (
set "name=%%~f"
ren "%%f" "%%~nxf"
)
Davon rate ich ab – Batch kann Groß-/Kleinschreibung nicht sauber umwandeln. Nimm dafür PowerShell:
Get-ChildItem | Rename-Item -NewName { $_.Name.ToLower() }




4. Häufige Fehler und wie du sie umgehst



FehlerUrsacheLösung
Der Befehl "setlocal" ist falsch geschrieben Skript als .txt gespeichert, nicht .bat Umbenennen in .bat
Es wurden keine Dateien gefunden Falsche Endung (ext) oder falscher Ordner dir *.endung in der CMD prüfen
Die Syntax für den Dateinamen ist falsch Sonderzeichen oder Leerzeichen ohne Anführungszeichen Alle %%f immer in " " setzen
Zugriff verweigert Datei ist geöffnet oder schreibgeschützt Schreibschutz entfernen: attrib -r .
Die Nummerierung startet immer wieder bei 1 setlocal enabledelayedexpansion fehlt Am Anfang einfügen
Das Skript benennt sich selbst um ext=* oder .bat im Ordner Skript nach .cmd umbenennen oder in übergeordneten Ordner legen





5. Best Practices für die tägliche Nutzung



1. Immer zuerst in einem Testordner ausprobieren.
Erstelle `C:\temp\renametest`, kopiere 5–10 Dateien hinein, führe das Skript aus.

2. Speichere das Skript als `.bat` im Systemordner oder in `C:\Windows`
Dann kannst du es von überall per Namen aufrufen (z. B. `umbenennen` in der CMD).

3. Kommentiere dein Skript.
Batch vergisst nichts – aber du schon. Schreibe `::` vor jede Erklärung.

4. Escapezeichen für Sonderzeichen
Wenn du `&`, `<`, `>`, `|` im Namen verwenden willst, musst du sie mit `^` escapen. Besser: Vermeiden.

5. Protokolliere die Umbenennung
Hänge an das Skript an:
echo %date% %time% %count% Dateien umbenannt >> rename_log.txt




6. Alternative: Die moderne PowerShell für Anfänger



Falls du doch eine komfortablere Umgebung ohne Datei-Erstellung suchst:

$i=1; Get-ChildItem *.jpg | ForEach-Object { Rename-Item $_ -NewName ("Urlaub_2024_{0:D3}.jpg" -f $i++) }


- Kein separates Skript nötig

- Mehr Sicherheit (Undo mit `-WhatIf`)

- Bessere Fehlerbehandlung

Aber: Nicht auf jedem Windows standardmäßig erlaubt, langsamer bei 10.000+ Dateien, abhängig von ExecutionPolicy.




Fazit: Batch ist kein Auslaufmodell, sondern ein Werkzeug für Könner



Du möchtest Bilder, Dokumente oder andere Dateien ohne wenn und aber umbenennen – schnell, ohne Installation, ohne Overhead, vollständig kontrolliert. Ein gut geschriebenes Batch-Skript erledigt das in Sekunden, ist reproduzierbar, portabel und lehrreich.

Verstehe die Grundlagen (`enabledelayedexpansion`, `ren`, `for`-Schleifen, Nummernformatierung), und du bist in Zukunft Herr über jede chaotische Dateisammlung.

Die Eingabeaufforderung war nie tot. Sie wartet nur auf den richtigen Befehl.







FAQ 6: Aktualisiert am: 6 Mai 2026 20:50 Windows
Batch-Scripts

Batch-Scripts, um Internetverbindungen automatisch neu zu starten!?


Ein einfaches Batch-Skript kann helfen, häufige Netzwerkprobleme zu lösen, indem es den Netzwerkadapter neu startet, den DNS-Cache löscht und die IP-Adresse
Batch-Scripts

Was sind Windows Batch-Scripts!


Windows Batch-Skripte, korrekt bezeichnet als Batch-Dateien, sind einfache Textdateien, die eine Reihe von Befehlen enthalten, die in der Kommandozeilenumgebung
Batch-Scripts

Windows Batch-Datei um eine einfache FTP Verbindung herzustelen?


Um eine einfache FTP-Verbindung mit einer Windows 12, 11, oder 10 -Batch-Datei herzustellen und einige grundlegende FTP-Befehle auszuführen, können Sie eine
Batch-Scripts

Batch-Skript zum Löschen des Symbol-/Miniaturbild-Cache!?


Um den Icon-Cache und den Thumbnail-Cache in Windows 10, 11 und 12 zu löschen, kannst du folgendes Batch-Skript verwenden: 1. Icon- und Thumbnail-Cache in
Batch-Scripts

Temporäre Dateien löschen mit Batch-Skript!?


Das Skript ist nützlich, aber es gibt einige Unterschiede zwischen Windows 10, 11, 12 und MS Server beim Löschen temporärer Dateien und des Papierkorbs:
Batch-Scripts

Batch-Scripts, um Internetverbindungen automatisch neu zu starten!?


Ein einfaches Batch-Skript kann helfen, häufige Netzwerkprobleme zu lösen, indem es den Netzwerkadapter neu startet, den DNS-Cache löscht und die IP-Adresse

»»

  Meine Frage ist leider nicht dabei
Gestellte Fragen zu dieser Antwort:
Keywords: batch, scripts, bilder, dateien, umbenennen, ohne, aber, über, eingabeaufforderung, pragmatische, bulk-umbenennung, zusätzliche, software, hast, keine, lust, grafischen, schnicksack, bloatierte, bilderverwaltungsprogramme, Fragen, Antworten, Software




  

  + Freeware
  + Ordnung am PC
  + Dateiverwaltung
  + Automatisierung
  + Office Tools
  + PC-Test-Tools
  + Deko und Spaß
  + Desktop-Uhren
  + Security

  + SoftwareOK Pages
  + Micro Staff
  + Freeware-1
  + Freeware-2
  + Freeware-3
  + FAQ
  + Downloads

  + Top
  + Desktop-OK
  + The Quad Explorer
  + Don't Sleep
  + Win-Scan-2-PDF
  + Quick-Text-Past
  + RAMagic
  + DesktopDigitalClock
  + Find Same Images
  + Print Folder Tree


  + Freeware
  + WinPing
  + BarcodeOK
  + LTK
  + Zigarettenschachtel-Spr ...
  + DesktopSchneeFree
  + MeineCPU
  + FavoritenFreund
  + WinScan2PDF
  + DontSleep
  + PAD-s


Home | Danke | Kontakt | Link | FAQ | Settings | Windows 2015 | eBlog | English-AV | Impressum | Translate | PayPal | PAD-s

 © 2026 by Nenad Hrg softwareok.de • softwareok.de • softwareok.com • softwareok.eu
43.417 msec.


>> ☕ Kaufe SoftwareOK einen Kaffee ☕ <<



► Linien im Windows Explorer Verzeichnis Baum mit Q-Dir! ◄
► Kann ich Benutzer-Konten über PowerShell auflisten? ◄
► Mit dem Befehl control userpasswords2 Benutzer löschen und erstellen! ◄
► Alle installierten Geräte sehen (Scanner, Drucker)? ◄


Diese Webseite speichert keine personenbezogenen Daten. Allerdings werden Drittanbieter verwendet, um Werbung zu schalten.
Diese wird von Google verwaltet und entspricht dem IAB Transparency and Consent Framework (IAB-TCF).
Die CMP-ID lautet 300 und kann am Seitenende individuell angepasst werden.
mehr Infos & Datenschutz

....