Wo ist mein fehler
Wo ist mein Fehler???
Hallo ich habe eine Batchdatei die fehlende Bilder mit einem NO-Bild erstellen soll.
Er rattert kurz durch und in der bild.cmd steht nur
ob wohl er mir Bild002.bmp Bild005.bmp und soweiter als copy befhl schreiben müsste.
Hallo ich habe eine Batchdatei die fehlende Bilder mit einem NO-Bild erstellen soll.
echo >bild.cmd
setlocal enabledelayedexpansion
for /L %%i in (1,1,999) do (
echo %%i >>bild.cmd
if /I %%i LSS 100 (
if /I %%i LSS 10 (
if NOT exist 'z:\Beurteilung\Bild00%%i.bmp' (
echo copy z:\Beurteilung\no.bmp z:\Beurteilung\Bild00%%i.bmp >> bild.cmd
)
)else(
if NOT exist 'z:\Beurteilung\Bild0%%i.bmp'(
echo copy z:\Beurteilung\no.bmp z:\Beurteilung\Bild0%%i.bmp >> bild.cmd
)
)
)else(
if NOT exist 'z:\Beurteilung\Bild%%i.bmp' (
echo copy z:\Beurteilung\no.bmp z:\Beurteilung\Bild%%i.bmp >> bild.cmd
)
)
)
Pause
ECHO ist eingeschaltet (on).
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 174651
Url: https://administrator.de/contentid/174651
Ausgedruckt am: 25.11.2024 um 12:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo Dipps,
dein Fehler liegt darin, beim
Da du eine Batchdatei schreiben willst, wären die ganzen Bildnummern, die durch Zeile 4 in Deinem Code dort hinein geschrieben würden, sowieso kontraproduktiv. Deshalb wird das bei obigem Code nicht gemacht.
Gruß
Friemler
dein Fehler liegt darin, beim
if exist
-Befehl den Dateinamen in Apostrophe einzuschließen statt in Anführungszeichen. Das ganze ließe sich aber sowieso folgendermaßen eindampfen (ist dann sogar etwas schneller):@echo off & setlocal
type NUL > "Bild.cmd"
for /l %%i in (1, 1, 999) do (
call :ProcessFile %%i
)
exit /b
:ProcessFile
set "Num=00%1"
set "Num=%Num:~-3%"
if not exist "Z:\Beurteilung\Bild%Num%.bmp" (
>>"Bild.cmd" echo copy "Z:\Beurteilung\No.bmp" "Z:\Beurteilung\Bild%Num%.bmp"
)
exit /b
Da du eine Batchdatei schreiben willst, wären die ganzen Bildnummern, die durch Zeile 4 in Deinem Code dort hinein geschrieben würden, sowieso kontraproduktiv. Deshalb wird das bei obigem Code nicht gemacht.
Gruß
Friemler