Datei per CMD umbenennen
Datei per CMD umbenennen und Teil des Ordnernamens übernehmen
Hallo,
ich möchte gerne erreichen, dass alle Dateien eines Ordners inkl. Unterordner in ein Ordner verschoben werden.
Beispiel IST
Ordnerstruktur
Hauptordner
->100 (Unterordner)
->200 (Unterordner)
->300 (Unterordner)
.
.
.
Unter den Unterordnern befinden sich mehrere PDF Dateien. Beispiel: meine.pdf
Nun soll das Ziel sein, alle PDF Dateien im Ordner "100" umzubenennen nach 100_meine.pdf ("Ordnername"_"ursprünglicherDateiname".pdf). Für die PDF-Dateien im Ordner "200" müsste die Umbennennung so aussehen "200_meine.pdf".
Beispiel SOLL
Hauptordner
->Reports (unterordner)
In dem Unterordner sollen nun alle umbenannten PDF Dateien liegen.
Ist dies mittels CMD machbar?
Viele Grüße
Hallo,
ich möchte gerne erreichen, dass alle Dateien eines Ordners inkl. Unterordner in ein Ordner verschoben werden.
Beispiel IST
Ordnerstruktur
Hauptordner
->100 (Unterordner)
->200 (Unterordner)
->300 (Unterordner)
.
.
.
Unter den Unterordnern befinden sich mehrere PDF Dateien. Beispiel: meine.pdf
Nun soll das Ziel sein, alle PDF Dateien im Ordner "100" umzubenennen nach 100_meine.pdf ("Ordnername"_"ursprünglicherDateiname".pdf). Für die PDF-Dateien im Ordner "200" müsste die Umbennennung so aussehen "200_meine.pdf".
Beispiel SOLL
Hauptordner
->Reports (unterordner)
In dem Unterordner sollen nun alle umbenannten PDF Dateien liegen.
Ist dies mittels CMD machbar?
Viele Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 139904
Url: https://administrator.de/contentid/139904
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
6 Kommentare
Neuester Kommentar
Moin FRAD,
ein Beispiel mit angezeigtem Ergebnis am CMD-Prompt wäre:
Anmerkungen:
Grüße
Biber
ein Beispiel mit angezeigtem Ergebnis am CMD-Prompt wäre:
>for /d %i in (F:\temp\?00) do @for %j in ("%i\*.*") do @echo Move "%j" "\temp\Reports\%~ni_%~nxj"
Move "F:\temp\100\beispiel eins.pdf" "\temp\Reports\100_beispiel eins.pdf"
Move "F:\temp\100\beispiel zwo.pdf" "\temp\Reports\100_beispiel zwo.pdf"
Move "F:\temp\200\anderesbeispiel.pdf" "\temp\Reports\200_anderesbeispiel.pdf"
Anmerkungen:
- Mein Ordner "F:\temp" entspricht deinem "Hauptordner" und hat die Unterverzeichnisse "100" und "200"
- Ich habe unterstellt, dass der neue Zielordner (bei mir "F:\temp\Reports") bereits angelegt wurde und habe ihn fest als Ziel angegeben.
- Wenn das angezeigte Ergebnis bei dir auch sinnvoll aussieht, dann das "@echo" weglassen - dann wird tatsächlich verschoben.
Grüße
Biber
Moin FRAD,
ein "Batch-Skript" ist ein Hilfsmittel für wiederkehrende Aufgaben, beispielsweise für Kopier/Umbenams-Aktionen, die du 3x täglich oder jeden Donnerstag mittag machen musst.
Bei einer EINmaligen Aktion wie deiner "Ab heute will ich meine Ordnerstruktur übersichtlicher organisieren"-Klamotte - da brauchst du nur EINmal im Leben diese eine CMD-Zeile. Versuch diese lieber nachzuvollziehen (siehe Hilfe zu FOR /?) als sie unverstanden irgendwo auf dem Desktop doppelklickbar abzuspeichern.
Wenn und nachdem du diese CMD-Zeile verstanden hast kannst du sie gerne (inklusive des "@echo"s in eine Textdatei speichert und von dort aus (solltest du eine Variante davon jemals wieder brauchen) per Copy&Paste an den CMD-Prompt kopieren.
Zur Frage "Ordner heißen 1000 und 2000 statt 100 und 200": Dann die Wildcard-Maske anpassen von "\Hauptordner\?00" auf "\Hauptordner\?000".
Grüße
Biber
ein "Batch-Skript" ist ein Hilfsmittel für wiederkehrende Aufgaben, beispielsweise für Kopier/Umbenams-Aktionen, die du 3x täglich oder jeden Donnerstag mittag machen musst.
Bei einer EINmaligen Aktion wie deiner "Ab heute will ich meine Ordnerstruktur übersichtlicher organisieren"-Klamotte - da brauchst du nur EINmal im Leben diese eine CMD-Zeile. Versuch diese lieber nachzuvollziehen (siehe Hilfe zu FOR /?) als sie unverstanden irgendwo auf dem Desktop doppelklickbar abzuspeichern.
Wenn und nachdem du diese CMD-Zeile verstanden hast kannst du sie gerne (inklusive des "@echo"s in eine Textdatei speichert und von dort aus (solltest du eine Variante davon jemals wieder brauchen) per Copy&Paste an den CMD-Prompt kopieren.
Zur Frage "Ordner heißen 1000 und 2000 statt 100 und 200": Dann die Wildcard-Maske anpassen von "\Hauptordner\?00" auf "\Hauptordner\?000".
Grüße
Biber