ollenhauer
Goto Top

Ordnerstruktur automatisch erstellen mit Dateinamen

Ich habe ca. 400 Dateien die folgendermaßen aufgebaut sind

1342-114_Elchinger_Versicherungen_Vertragvom30.01.2019.pdf

Nun möchte ich, dass aus den Dateinamen eine Ordnerstruktur erstellt wird.

Die "Doc-Nr" und "Kundennummer" brauche ich nicht, kann also weggelassen werden.

Es soll der Ordner: Elchinger erstellt werden
Unterordner: Versicherung erstellt werden
und die Datei (pdf oder xls- Datei) in diesen Ordner verschoben werden

Da ich die ca. 400 Dateien immer wieder neu exportiert bekomme.
Würde ich das gerne immer wieder alles löschen und neu aufbauen, da sich die Dateien im Namen oder in der Zuordnung ändern.

Hat jemand dazu ein Batch-Skript zur Hand ? Ich kann leider nicht programmieren...

Content-Key: 1226598804

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

Printed on: June 26, 2024 at 10:06 o'clock

Mitglied: 149062
149062 Sep 04, 2021 updated at 09:04:47 (UTC)
Goto Top
Man hätte auch einfach mal hier rein schauen können, das kommt hier täglich ...
Musterlösungen: Dateien verschieben abhängig vom Teil des Dateinamens

@echo off
set "root=D:\Ordner"  
for %%a in ("%root%\*.pdf") do (  
    for /f "tokens=2,3 delims=_" %%b in ("%%~na") do (  
        md "%root%\%%b\%%c" >nul 2>&1  
        move "%%a" "%root%\%%b\%%c\"  
    )
)
Member: Ollenhauer
Ollenhauer Sep 04, 2021 at 18:48:31 (UTC)
Goto Top
Danke, das funktioniert sehr gut !! -)))
Wäre es möglich, dass beim Verschieben der Dateien in die Ordner der Dateiname mit geändert wird

und zwar in "Doc-Nr"_"Bezeichnung"

im o.g. Beispiel: 1342_Versicherungen_Vertragvom30.01.2019.pdf
Mitglied: 149062
149062 Sep 04, 2021, updated at Sep 05, 2021 at 08:52:34 (UTC)
Goto Top
Zitat von @Ollenhauer:

Danke, das funktioniert sehr gut !! -)))
Wäre es möglich, dass beim Verschieben der Dateien in die Ordner der Dateiname mit geändert wird

und zwar in "Doc-Nr"_"Bezeichnung"

im o.g. Beispiel: 1342_Versicherungen_Vertragvom30.01.2019.pdf

Jepp
@echo off
set "root=D:\Ordner"  
for %%a in ("%root%\*.pdf") do (  
    for /f "tokens=1-5 delims=_-" %%b in ("%%~nxa") do (  
        md "%root%\%%d\%%e" >nul 2>&1  
        move "%%a" "%root%\%%d\%%e\%%b_%%e_%%f"  
    )
)
Member: Ollenhauer
Ollenhauer Sep 05, 2021 at 08:48:08 (UTC)
Goto Top
Ne, das klappt leider nicht.
Am obigen Beispiel erklärt: 1342-114_Elchinger_Versicherungen_Vertragvom30.01.2019.pdf

Jetzt wird die Ordnerstruktur leider nicht nach Firmennamen "Elchinger" aufgebaut, sondern es wird Versicherung als Ordnerstruktur erstellt.
Die verschobenen pdf sind nicht mehr lesbar, da die pdf Datei eine Endung*.pdf_ bekommen hat und der Name passt entsprechend nicht_
Mitglied: 149062
149062 Sep 05, 2021 updated at 08:55:14 (UTC)
Goto Top
Zitat von @Ollenhauer:

Ne, das klappt leider nicht.
Am obigen Beispiel erklärt: 1342-114_Elchinger_Versicherungen_Vertragvom30.01.2019.pdf

Jetzt wird die Ordnerstruktur leider nicht nach Firmennamen "Elchinger" aufgebaut, sondern es wird Versicherung als Ordnerstruktur erstellt.
Die verschobenen pdf sind nicht mehr lesbar, da die pdf Datei eine Endung*.pdf_ bekommen hat und der Name passt entsprechend nicht_

Sorry kleiner Tippfehler ... Ist behoben.

Ab und zu Lesen bildet auch und du kannst dir selbst helfen 😉
Tutorial zur FOR-Schleife
Member: Ollenhauer
Ollenhauer Sep 05, 2021 at 08:59:35 (UTC)
Goto Top
Super! Danke Dir jetzt klappt es. Kann ich irgendwo nachlesen/lernen wie das geht ?
Mitglied: 149062
149062 Sep 05, 2021 updated at 09:12:22 (UTC)
Goto Top
Zitat von @Ollenhauer:
Kann ich irgendwo nachlesen/lernen wie das geht ?

Eine Quelle hab ich dir im letzten Kommentar verlinkt.
Member: Ollenhauer
Ollenhauer Sep 05, 2021 at 09:13:35 (UTC)
Goto Top
2 Dinge sind noch anders
Im Original-Dateinamen sind teilweise Unterstriche "_" vorhanden. Diese Dateien sind nach dem Verschieben nicht mehr lesbar.

Der Dateiname ist nicht "Doc-Nr"_"Bezeichnung", sondern es wird noch vor der Bezeichnung eine weitere Bezeichnung genannt. Diese sollte nicht mit enthalten sein.
Member: Ollenhauer
Ollenhauer Sep 05, 2021 at 11:12:14 (UTC)
Goto Top
Wie kann ich im Code für die Bezeichnung der Datei die beiden Zeichen - und _ ausklammern.
Das verursacht Probleme beim verschieben und umbennen.

- und _ sind ja die Seperatoren.
Mitglied: 149062
149062 Sep 05, 2021 updated at 14:12:22 (UTC)
Goto Top
Zitat von @Ollenhauer:

Wie kann ich im Code für die Bezeichnung der Datei die beiden Zeichen - und _ ausklammern.
Das verursacht Probleme beim verschieben und umbennen.

- und _ sind ja die Seperatoren.

Im oben verlinkten Tut. den Abschnitt zu tokens
lesen dann kommst du auch selber drauf, von copy n paste lernst du nichts
Tutorial zur FOR-Schleife

umbennen
Herzlichen Glückwunsch du hast den running gag counter um eins erhöht += 1

I'm out.
Member: Ollenhauer
Ollenhauer Sep 05, 2021 at 15:58:11 (UTC)
Goto Top
Na dann freue ich mich für dich -)