TOPTORIALS OFFICE - Batch Grundkurs
Script-Paket: 008_Text_in_Dateinamen_ersetzen
Autor: Chris
YouTube: https://www.youtube.com/@TOPTORIALS-OFFICE
Webseite: https://www.toptorials.com
Letzte Aktualisierung: 2026-06-27

============================================================

1. Was macht dieses Script-Paket?
   ============================================================

Dieses Script-Paket ersetzt Text in Dateinamen.

Beim Start wird abgefragt, welcher Text gesucht und durch welchen neuen
Text ersetzt werden soll. Dadurch muss der Code nicht jedes Mal manuell
angepasst werden.

Beispiel:

Alter Text:
IMG_

Neuer Text:
Foto_

Aus:

IMG_001.jpg

wird:

Foto_001.jpg

Wenn beim neuen Text nichts eingegeben wird, wird der gesuchte Text aus
dem Dateinamen entfernt.

============================================================
2. Enthaltene Dateien / Varianten
=================================

Dieses Paket enthaelt zwei Varianten.

---

## 01_Einfach

008_text_in_dateinamen_ersetzen_test.bat

Diese Variante bearbeitet Dateien im aktuellen Ordner.

Das Script wird per Doppelklick gestartet und fragt danach:

* welcher Text gesucht werden soll
* durch welchen Text ersetzt werden soll

Solange "_test" im Dateinamen steht, wird nur angezeigt, was passieren
wuerde. Es werden noch keine Dateien umbenannt.

---

## 02_SendTo_Text_ersetzen

008_sendto_text_in_dateinamen_ersetzen_test.bat
008_sendto_text_in_dateinamen_ersetzen.bat

Diese Variante ist fuer das Windows-Menue "Senden an" gedacht.

Man kann Dateien oder Ordner im Explorer markieren und an das Script
senden.

* Bei uebergebenen Dateien werden diese Dateien direkt bearbeitet.
* Bei uebergebenen Ordnern werden die Dateien direkt innerhalb dieser
  Ordner bearbeitet.
* Unterordner werden nicht rekursiv durchsucht.

Auch diese Variante fragt beim Start nach Suchtext und Ersatztext.

============================================================
3. Anwendung der einfachen Variante
===================================

Die Datei

008_text_in_dateinamen_ersetzen_test.bat

in den Ordner kopieren, dessen Dateien umbenannt werden sollen.

Danach per Doppelklick starten.

Das Script fragt nach:

Alter Text / Suchtext:
Neuer Text / Ersatztext:

Wenn beim Suchtext nichts eingegeben wird, wird das Script beendet.

Wenn beim Ersatztext nichts eingegeben wird, wird der Suchtext aus dem
Dateinamen entfernt.

Beispiel:

Suchtext:
Kopie von

Ersatztext:
leer lassen

Aus:

Kopie von Rechnung.pdf

wird:

Rechnung.pdf

============================================================
4. Anwendung der SendTo-Variante
================================

Die SendTo-Batchdatei oder eine Verknuepfung davon kann in den
Windows-Ordner "Senden an" gelegt werden.

Den SendTo-Ordner oeffnet man mit:

shell:sendto

Danach kann man im Explorer Dateien oder Ordner markieren und mit

Rechtsklick -> Senden an

an das Script uebergeben.

Wichtig:

* Bei Dateien werden die uebergebenen Dateien selbst bearbeitet.
* Bei Ordnern werden die Dateien direkt in diesen Ordnern bearbeitet.
* Unterordner werden nicht rekursiv durchsucht.

============================================================
5. Testmodus und Sicherheit
===========================

Solange "_test" im Dateinamen steht, wird nur angezeigt, was passieren
wuerde.

Beispiele:

008_text_in_dateinamen_ersetzen_test.bat = Vorschau
008_text_in_dateinamen_ersetzen.bat      = echte Ausfuehrung

008_sendto_text_in_dateinamen_ersetzen_test.bat = Vorschau
008_sendto_text_in_dateinamen_ersetzen.bat      = echte Ausfuehrung

Fuer die echte Ausfuehrung muss "_test" aus dem Dateinamen entfernt
werden. Danach fragt das Script zusaetzlich nach "JA".

Das Script ueberschreibt keine vorhandenen Dateien.

Wenn durch das Ersetzen ein Dateiname entstehen wuerde, der bereits
existiert, wird automatisch ein freier Name mit Nummerierung verwendet.

Beispiel:

Unbenannt.txt
Unbenannt_001.txt
Unbenannt_002.txt

============================================================
6. Wichtige Hinweise
====================

* Vor der echten Ausfuehrung immer zuerst den Testmodus verwenden.
* Bei wichtigen Dateien vorher ein Backup erstellen.
* Das Script loescht keine Dateien.
* Das Script ueberschreibt keine vorhandenen Dateien.
* Wenn der Suchtext nicht gefunden wird, wird die Datei uebersprungen.
* Wenn der Ersatztext leer bleibt, wird der Suchtext entfernt.
* Wenn nach dem Entfernen kein sinnvoller Dateiname mehr uebrig bleibt,
  wird automatisch "Unbenannt" verwendet.
* Ausgeschlossene Dateiendungen koennen im Script angepasst werden.
* Die SendTo-Variante durchsucht keine Unterordner.

============================================================
7. Beispiele
============

Beispiel 1:

Suchtext:
IMG_

Ersatztext:
Foto_

Vorher:
IMG_001.jpg

Nachher:
Foto_001.jpg

---

Beispiel 2:

Suchtext:
Kopie von

Ersatztext:
leer lassen

Vorher:
Kopie von Rechnung.pdf

Nachher:
Rechnung.pdf

---

Beispiel 3:

Suchtext:
Rechnung

Ersatztext:
leer lassen

Vorher:
Rechnung.txt

Nachher:
Unbenannt.txt

Falls Unbenannt.txt bereits existiert, wird automatisch ein freier Name
verwendet, zum Beispiel:

Unbenannt_001.txt

============================================================
8. Anpassungen
==============

In einigen Varianten gibt es eine Ausschlussliste fuer Dateiendungen.

Beispiel:

.bat
.cmd
.ps1
.py
.log

Diese Dateitypen werden dann nicht bearbeitet.

Die Liste kann direkt im jeweiligen Script angepasst werden.

============================================================
9. Wichtige Lernpunkte
======================

In diesem Script-Paket sieht man unter anderem:

* wie man Benutzereingaben mit set /p abfragt
* wie man Text in Dateinamen ersetzt
* wie man Text aus Dateinamen entfernt
* wie man prueft, ob ein Suchtext vorhanden ist
* wie man leere Zielnamen verhindert
* wie man automatisch "Unbenannt" verwendet
* wie man Namenskonflikte mit Nummerierung behandelt
* wie man vorhandene Dateien vor Ueberschreibung schuetzt
* wie man einen Testmodus ueber "_test" im Dateinamen verwendet
* wie SendTo-Scripts mit Dateien und Ordnern arbeiten

============================================================
10. Hinweise
============

Dieses Script-Paket ist besonders nuetzlich fuer Scans, Downloads,
Exportdateien, Bilder, Dokumente, Belege und andere Dateien, deren Namen
schnell bereinigt oder angepasst werden sollen.

Die Nutzung erfolgt auf eigene Verantwortung.
Bitte Scripts immer zuerst in einem Testordner ausprobieren.
