Batch umbenennen von mehreren Dateien in Unterordnern?

romeon

Rear Admiral
Registriert
Feb. 2005
Beiträge
5.712
Hi,

Ich bräuchte eine Batch, die ".nfo" Dateien in Unterverzeichnissen in zB ".info" umbenennt.

Hintergrund:
Für das MediaCenter XBMC kann man sämtliche Infos, Covers etc zu Filmen auch im jeweiligen Filmordner speichern lassen. Einiges habe ich aber schon selbst mit selbigem Namen angelegt. Diese Dateien würde ich gerne im Vorfeld umbenennen, damit da nichts durcheinander kommt.

Es geht nur um den Datei-Typ .nfo. Alle in Unterordnern gefundene Files diesen Typs sollen in .info umbenannt werden. In manchem Ordner ist aber auch nichts zum Umbenennen drin.


Grundsätzlich würde es so aussehen:

<DIR> Film1
............Filmname1.avi
............Filmname1.nfo

<DIR> Film2
............Filmname2.avi
............Filmname2.nfo

<DIR> Film3
............Filmname3.avi
............Filmname3.nfo

<DIR> Film4
............Filmname4.avi
............Filmname4.nfo

.....


Wäre sowas machbar oder gibts evtl schon ein fertiges Tool dafür? :)

Danke!
 
http://toolsandmore.de/Central/Produkte/Software/Datei-Tools/Joe/
Damit sollte es klappen.

Edit: Okay mit Joe kann man keine Ordner durchsuchen.
Dann nimm Advanced Renamer. Damit geht es garantiert. Habe es eben mal getestet.
Als Methode "Ersetzen" auswählen und bei "Text der ersetzt werden soll" "nfo" eintragen und darunter "info".
Dann bei "hinzufügen" Ordner auswählen und sofern er alles wunderbar erkannt hat, oben rechts auf die 2 kleinen Pfeile klicken und dann auf "Starte Batch-Vorgang". Fertig.
 
Zuletzt bearbeitet:
Guten Morgen,

mein Vorschlag, wofür ich aber keine Garantie übernehme. Bei mir lief es ohne probleme, aber teste es vorher bei Dir.

Code:
@echo off
For /R %1 %%f in (*.nfo) do (
	For %%A in ("%%f") do (
		Set oName=%%~nxA
		Set nName=%oName:.nfo=.info%
		echo.File: %%f
		echo.New_Name: %nName%
		ren "%%f" "%nName%"
		echo - next ------------
	)
)


Dies in eine Datei speichern z.B. "renamer.bat" und in der Konsole mit renamer.bat <verzeichniss> starten.
z.B renamer.bat "d:\meine videos"

gl hf
E.o.B
 
Mit Total Commander
http://www.ghisler.com/
Zb. suche nach Dateien .nfo - Anwenden - und die ganze Liste der Dateien in .info umbenennen.
 
Eines der besten Programme in meinen Augen: Flexible Renamer v8.4

Ist sehr flexibel und sehr mächtig. Ansonsten Cygwin-Tools installiert, und mit perl oder per Unix Shell mal kurz ein Programm erstellen (wenn man programmieren kann und RegExp beherrscht) ist die flexibelste Variante.
 
Hi und danke euch schon mal! :)

Ich hab kurz E.o.B Batch versucht, bei der aber leider nichts gemacht wird.
Edit: doch, manchmal werden auch die nfo's so umbenannt, Filename: .nfo=.info
Die Fehler kommen dabei:

Code:
D:\Temp7>batch
File: Y:\Film1\Filmname1.nfo
New_Name:
Dateiname existiert bereits, oder die Datei
konnte nicht gefunden werden.
- next ------------
File: Y:\Film2\Filmname2.nfo
New_Name:
Dateiname existiert bereits, oder die Datei
konnte nicht gefunden werden.
- next ------------
File: Y:\Film3\Filmname3.nfo
New_Name:
Dateiname existiert bereits, oder die Datei
konnte nicht gefunden werden.
- next ------------
File: Y:\Film4\Filmname4.nfo
New_Name:
Dateiname existiert bereits, oder die Datei
konnte nicht gefunden werden.
- next ------------


so sah mein Test-Ordner aus:
Y:\Film1 <DIR>
Y:\Film2 <DIR>
Y:\Film3 <DIR>
Y:\Film4 <DIR>
Y:\batch.bat

mit Inhalt jeweils:
Filmname1.nfo
Filmname1.txt
bzw 2, 3, 4

Die anderen Tipps probiere ich später aus, thx!
 
Zuletzt bearbeitet:
Hi,
versuche das hier:
Code:
@echo off
set "pfad=Y:\"
for /r %pfad% %%i in ("*.nfo") do echo ren "%%i" "%%~ni.info"
oder als CMD-Prompt
Code:
for /r Y:\ %i in ("*.nfo") do echo ren "%i" "%~ni.info"
Bei Beiden das echo vor dem ren weg machen, wenn alles passt...
 
@Entilzha: funktioniert! Danke dir! :)



mit Flexible Renamer klappte es nach etwas Rumprobiererei auch. Mit den Batches gehts aber halt schneller. Thx!
 
Zurück
Oben