Batch für Unterverzeichnisname und Dateinamen
Hallo ich bin neu hier im Forum und keine Experte für die Batch – Programmierung.
Ich benötige eine Batch – Datei zu Schreiben einer csv – Datei, diese soll den Pfad und Inhalt von Unterverzeichnisses in folgender Form wiedergeben:
1.Unterverzeichnis; Dateiname1; Dateiname2;…….;DateinameX
2.Unterverzeichnis; Dateiname1; Dateiname2;…….;DateinameX
Die Pfade der Unterverzeichnisse sollen ohne Laufwerksbuchstaben und die Dateiname ohne Extension in die csv – Datei geschrieben werden.
DANKE
1.Unterverzeichnis; Dateiname1; Dateiname2;…….;DateinameX
2.Unterverzeichnis; Dateiname1; Dateiname2;…….;DateinameX
Die Pfade der Unterverzeichnisse sollen ohne Laufwerksbuchstaben und die Dateiname ohne Extension in die csv – Datei geschrieben werden.
DANKE
Please also mark the comments that contributed to the solution of the article
Content-Key: 122371
Url: https://administrator.de/contentid/122371
Printed on: April 19, 2024 at 20:04 o'clock
2 Comments
Latest comment
Hallo PeterS71 und willkommen im Forum!
Etwa so:
Anmerkung: Bei der Angabe des Startordners in Zeile 2 darf am Ende kein "\" stehen, falls es sich um einen Root-Ordner handelt (also zB nicht "D:\", sondern nur "D:") ...
Grüße
bastla
Etwa so:
@echo off & setlocal
set "Ordner=D:\Test"
set "CSV=D:\Liste.csv"
if exist "%CSV%" del "%CSV%"
for /d %%i in ("%Ordner%\*.*") do set "Zeile=%%~pnxi" & call :ProcessDir "%%i"
goto :eof
:ProcessDir
for /f "delims=" %%a in ('dir /b /a-d %1') do call :ProcessFile "%%a"
>>"%CSV%" echo %Zeile%
goto :eof
:ProcessFile
set "Zeile=%Zeile%;%~n1"
goto :eof
Grüße
bastla