marhaba
Goto Top

Suchen und Ersetzen sowie Hochzählen in einer Batch

Hallo ihr Gurus,
verfolge schon seit einiger Zeit eure wirklich tollen Tipps und habe davon bisher schon ganz gut profitiert. Jetzt komme ich mit einem Problemchen, das euch bestimmt kein großes Kopfzerbrechen macht.

Vorgabe:

Ich habe eine automatisch generierte Textdatei, die diesen Aufbau hat (aber deutlich länger ist):

copy \\000.00.0.0\e$\FTP\ePaper\dialog\="4394152.B.12084538.132625509.jpg" />
copy \\000.00.0.0\e$\FTP\ePaper\dialog\="4394155.B.8771765.132625509.jpg" />
copy \\000.00.0.0\e$\FTP\ePaper\dialog\="4394151.B.12083486.132625509.jpg" />

Daraus soll eine Batch werden, die eine wechselnde Anzahl Bilder von einem Server holt und mit einem aufsteigenden Namen umbenennt (1.jpg, 2.jpg usw.).

Die Zeichen in der Mitte und am Ende kriege ich mit dieser Batch weg (das habe ich in diesem Forum schon gelernt):

@echo off & setlocal set "Ein=C:\Batches\Workdir\Bildliste.txt" set "Aus=C:\Batches\Workdir\11-Bilder-holen.bat" set "D=" for /f "usebackq delims=" %%i in ("%Ein%") do set "Z=%%i" & call :ProcessLine goto :eof:ProcessLine set "Zeile=%Z:~0,39%%D%%Z:~41,33%%D% >>"%Aus%" echo %Zeile%goto :eof

Das einstweilige Ergebnis würde so aussehen:

copy \\000.00.0.0\e$\FTP\ePaper\dialog\4394152.B.12084538.132625509.jpgcopy \\000.00.0.0\e$\FTP\ePaper\dialog\4394155.B.8771765.132625509.jpgcopy \\000.00.0.0\e$\FTP\ePaper\dialog\4394151.B.12083486.132625509.jpg

Ich hätte es aber gerne so:

copy \\000.00.0.0\e$\FTP\ePaper\dialog\4394152.B.12084538.132625509.jpg 1.jpgcopy \\000.00.0.0\e$\FTP\ePaper\dialog\4394155.B.8771765.132625509.jpg 2.jpgcopy \\000.00.0.0\e$\FTP\ePaper\dialog\4394151.B.12083486.132625509.jpg 3.jpgusw.

Fällt jemandem von euch die Lösung ein (ich würde ihn/sie dann bestimmt in mein Nachtgebet einschließen!!!)?

Schöne Gruße an die Runde vom Neuling Marhaba

Content-Key: 124460

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

Printed on: April 26, 2024 at 05:04 o'clock

Member: Snowman25
Snowman25 Sep 08, 2009 at 14:03:00 (UTC)
Goto Top
@echo off & setlocal set Ein="C:\Batches\Workdir\Bildliste.txt" set Aus="C:\Batches\Workdir\11-Bilder-holen.bat" set D="" "" set /A math=1 for /f "usebackq delims=" %%i in ("%Ein%") do set Z="%%i" & call :ProcessLine goto :eof :ProcessLine set Zeile="%Z:~0,39%%D%%Z:~41,33%%D% %math%.jpg" >>"%Aus%" echo %Zeile% set /A math=%math%+1 goto :eof


Probiers mal so...

Schöne Gruße an die Runde vom Neuling Marhaba

Schöne Grüße aus München
Member: Marhaba
Marhaba Sep 09, 2009 at 05:44:07 (UTC)
Goto Top
Vielen Dank, Snowman25,

hat geklappt. Musste noch ein bisschen was an den Hochkommata umstellen, aber jetzt läuft's.

Wusste doch, dass ich hier an der richtigen Adresse bin.

Grüße

Marhaba