tkline
Goto Top

Files in Unterordnern umbenennen

Hi Leute, hätte da eine kleine Herausforderung (ist für euch bestimmt eine Kleinigkeit)

Ich habe einen Überordner namens "Main" in diesem Ordner befinden sich unzählige
Unterordner mit unterschiedlichen Namen (zB. U1, O7, I5) usw.

Alle Unterordner beinhalten Dateien, deren Endungen umbenannt werden müssen.
(Beispiel: von "pdf.20" "in .pdf")

Den Rename Befehl hab ich zwar (rename *pdf.20 *pdf) aber Wie kann ich nun diesen Befehl auf
alle Unterordner anwenden?

Habe in diesem Forum schon ein paar Beiträge studiert, aber keinen entsprechenden für mich gefunden,
bzw war teilweise ein bisschen überfordert.

Bitte um Hilfe, bin in Sachen Batching absoluter Newbie.

Danke euch.


Gruß

Tom

Content-Key: 70758

Url: https://administrator.de/contentid/70758

Printed on: April 20, 2024 at 04:04 o'clock

Member: Marcade
Marcade Oct 12, 2007 at 06:57:55 (UTC)
Goto Top
Versuch es doch mal mit dem Total Commander >>da reicht sogar die voll funktionsfähige Sharewareversion<<


Total Commander Seite

Allgemeine Eigenschaften:

32- und 16-bit Version
Lange Dateinamen unter Windows 95/98/ME und Windows NT (16 und 32-bit Version)
Direkter Zugriff auf Netzwerkumgebung
Unterstützt Drag & Drop (Ziehen und Fallenlassen) auf Explorer, Desktop etc.
Kommandozeile zum einfachen und schnellen Starten von Programmen durch einfaches Eintippen des Programmnamens (eventuell mit Pfad).
Frei konfigurierbarer Buttonbar und Starter-Menü (benutzerdefiniertes Menü) zum Einbinden Ihrer bevorzugten Windows- und DOS-Anwendungen. Optional Übergabe der aktuell gewählten Datei an Ihr Programm.
Frei definierbares Hauptmenü.
Eingebauter Dateibetrachter (F3), der Dateien beliebiger Grösse als Hex- oder Text darstellen kann, sowohl im ASCII- (DOS) als auch im ANSI- (Windows) Zeichensatz. Neu: UTF-8-Unicode-Format.
Bitmapviewer im Lister, zusätzliche Formate durch Irfanview (siehe Zubehör).
Parallelport-Link zum Verbinden von 2 Rechnern
HTML- und Unicode-Viewer im Lister
Die Minaturansicht zeigt Vorschaubilder in den Dateilisten.
Benutzerdefinierte Spalten erlauben die Anzeige von zusätzlichen Dateidetails.
Memfrach-Umbenenntool zum Umbenennen vieler Dateien auf einmal über spezielle Regeln, oder durch Bearbeiten der Dateinamen in einem Texteditor
Programm und Hilfe komplett in Deutsch und Englisch!
Member: Dani
Dani Oct 12, 2007 at 07:37:24 (UTC)
Goto Top
Moin Tom,

ich würde es mal so probieren:
@echo off

for /F "delims=. tokens=1,2,3" %%a in ('dir /s /b "C:\test\.*pdf*"') do rename %%a.%%b.%%c %%a.%%b  
[Ungetestete Skizze!]
Also die Schleife splittet immer den Dateinamen an einem Punkt. Somit hast du alles wunderbar getrennt in den Variablen %%a, %%b, %%c. Mit *.pdf* stellst du sicher, dass er nur PDF-Dateien findet.


Grüße
Dani
Member: Supaman
Supaman Oct 12, 2007 at 08:05:29 (UTC)
Goto Top
ich würds über total commander machen. befehle-> suchen [suchmaske eingeben], es werden alle dateien unterhalb des gewünschten ordners gefunden. alle dateien makrkieren und mit dem mehrfach umbenenn tool zurechtrücken.
Member: tkline
tkline Oct 13, 2007 at 14:46:26 (UTC)
Goto Top
Hi, danke euch für die Tipps.
Ich könnte das schon mit dem total commander realisieren, allerdings
möchte ich das ganze per batchscript machen.

@Dani, danke dir für deinen Tipp, bin leider nicht so der Batch Experte.
Ich wäre dir sehr dankbar, wenn du mir beschreiben könntest, was
die einzelnen Parameter nun genau bewirken. Speziell delims, tokens und die
ganzen Prozentzeichen stellen mich vor ein Rätsel.
Wie gesagt, bin noch Newbie auf dem Gebiet.

Danke für eure Geduld

Tom
Member: Dani
Dani Oct 13, 2007 at 17:24:34 (UTC)
Goto Top
Abend tkline.
kein Problem...jeder fängt mal klein an. face-smile

Also "delims" gibt an, welche Zeichen als Trenner genommen werden sollen. dort kannst du beliebig viele angeben (ist wie die split Funktion bei C++).
Mit "tokens" kannst du sagen, welche gesplitten Zeichenketten in Variablen gespeichert werden sollen.
"%%a" ist eine Schleifevariable. Du kannst auch bei %%i anfangen. Der Bereich geht von %%a bis %%z. Dann ist Schluss! face-wink
Sprich das 1. Ergebnis wird in diese Variable gespeichert. Wenn du nun eine Schleife hast, wie oben (Kombination mit "tokens"), werden weitere Ergebnisse fortlaufend in die nächste Variablen gespeichert.

Ich hoffe, ich konnte dir weiterhelfen bzw. habe mich verständlich ausgedrückt.


Grüße
Dani
Member: tkline
tkline Oct 13, 2007 at 18:29:43 (UTC)
Goto Top
Hi Dani,

Danke für deine Erklärung,
hast mir sehr weitergeholfen, jetzt versteh ich das Ganze endlich.

Bin jetzt kurz davor, dass das Script so läuft wie ich es
haben möchte, da macht es gleich viel mehr Spaß.
Ist nicht mal so schwer, wenn man es mal kapiert hat face-wink

Hab mir noch ein paar Tutorials ausgedruckt und werd mich heute
Nacht damit beschäftigen, bin jetzt voll motiviert...

Danke dir nochmal

Grüße
Tom