schulle2
Goto Top

Zählen von Dateien klappt nicht

Hallo,

ich splitte zuerst eine Datei in mehrere Parts auf (abhängig von der orginal größe).
Anschliessend zähle ich die parts wie man unten im script sehen kann.
Nun will ich alle, bis auf die letzte Datei löschen. Nur leider klappt das nicht.
Manchmal zählt er nicht richtig, manchmal falsch etc.
Hat jmd eine Idee?
(infile = original datei)
for %%i in (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14) do if exist  listener_all.frag%%i.LOG (SET /A data+ =1)


echo %data%
echo ***********************************************************************
echo Datei wurde in  %data% Teile aufgesplittet
echo ***********************************************************************

set /a data = %data% -1
for /l %%a in (0,1,%data%) do del listener_all.frag%%a.LOG
set /a data = %data% +1
del %infile%
ren listener_all.frag%data%.LOG %infile%

)
Danke im Vorraus!

Content-ID: 63574

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

Ausgedruckt am: 26.11.2024 um 01:11 Uhr

Biber
Biber 11.07.2007 um 14:35:39 Uhr
Goto Top
Moin schulle2,
Manchmal zählt er nicht richtig, manchmal falsch etc.
So trocken möchte ich auch mal die Gags raushauen können..*gg

Ich denke, eine Fehlerquelle ist der (für Batche zu lockere) Umgang mit Leerzeichen beim SET-Befehl.

Hier: (SET /A data+ =1) -------> darf kein Leerzeichen zweischen "+" und "="
Hier: set /a data = %data% -1 ----------> darf kein Leerzeichen zwischen dem ersten "data" und "="
Hier: set /a data = %data% +1 ----------> darf kein Leerzeichen zwischen dem ersten "data" und "="

Hier :Danke im Vorraus! --->ist vordergründig ein "r" zuviel.
Beim zweiten Hinsehen ist allerdings die ganze Zeile überflüssig.

Außerdem: wo kommt denn die überzählige Klammer-Zu ")" am Ende her?
Läuft das Ganze innerhalb einer äußeren FOR...-Anweisung?

Grüße
Biber
miniversum
miniversum 11.07.2007 um 14:38:15 Uhr
Goto Top
Benutz doch die dir funktion zum Zählen.
Die For Schleife würde dan so aussehen:
for /F "tokens=1 delims= " %%a in ('dir listener_all.frag*.LOG ^|find "Datei(en)"') do set data=%%a

miniversum