jamu009
Goto Top

Dateipfad in txt Datei umwandeln

Hallo,

Kann ich einen Pfad (z.B. Z:\Kunde_XY\EMails\2009\Anfrage.msg) einer Datei in eine Text, bzw. CSV Datei exportieren, so dass diese dann folgenden aufbau hat:

Kunde;Dokumentenart;Jahr;Dateiname
Kunde_XY;Emails;2009;Anfrage.msg

Das ganze soll für eine große Anzahl von Dateien gemacht werden, jedoch soll jede Datei eine eingene CSV erhalten.

Vielen Dank für eure Antworten!

Jamu

Content-Key: 142393

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

Printed on: April 19, 2024 at 11:04 o'clock

Member: bastla
bastla May 07, 2010 at 12:16:22 (UTC)
Goto Top
Hallo Janu009 und willkommen im Forum!

Wenn die Anzahl der Pfadbestandteile (=Anzahl der (Unter-) Ordner) immer gleich ist, sollte eine Zeile in der Eingabeaufforderung dafür reichen:
for /f "delims=" %i in ('dir /s /b Z:\*.msg') do @for /f "tokens=2-5 delims=\" %a in ("%i") do @(echo Kunde;Dokumentenart;Jahr;Dateiname & echo %a;%b;%c;%d)>"%~dpni.csv"
Um einen Batch daraus zu machen, jeweils "%" durch "%%" ersetzen.

Die .csv wird so im jeweiligen Kundenordner mit dem Namen der .msg-Datei erstellt (was natürlich auf einer Annahme meinerseits beruht, aber mehr Informationen dazu konnte ich Deiner Fragestellung nicht entnehmen) ...

Grüße
bastla
Member: jamu009
jamu009 May 07, 2010 at 12:31:25 (UTC)
Goto Top
Vielen Dank für die freundliche Begrüßung!

Deine Lösung - und vor allem das Ergebnis - gefällt mir sehr und bringt mich schon einmal ein großes Stuck nach vorne!

Nun stellt sich nur noch die Frage, ob ich diesen Befehl für obergreifend für ein große Anzahl von Ordnern gleichzeitig ausführen kann?

Beste Grüße

Jamu009
Member: bastla
bastla May 07, 2010 at 12:46:22 (UTC)
Goto Top
Hallo jamu009!

In der derzeitigen Form sollten alle unterhalb von "Z:\" liegenden ".msg"-Dateien verarbeitet werden (siehe den Bestandteil
dir /s /b Z:\*.msg
- diesen Befehl kannst Du testweise so auch einzeln an der Kommandozeile eingeben um eine "Vorschau" auf die zu verarbeitenden Dateien zu erhalten ...

Grüße
bastla