dipps

Wo ist mein fehler

Wo ist mein Fehler???

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
Er rattert kurz durch und in der bild.cmd steht nur
ECHO ist eingeschaltet (on).
ob wohl er mir Bild002.bmp Bild005.bmp und soweiter als copy befhl schreiben müsste.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 174651

Url: https://administrator.de/forum/wo-ist-mein-fehler-174651.html

Ausgedruckt am: 21.05.2025 um 04:05 Uhr

Friemler
Friemler 13.10.2011 um 17:26:55 Uhr
Goto Top
Hallo Dipps,

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
Dipps
Dipps 13.10.2011 um 17:42:23 Uhr
Goto Top
Vielen Dank für deine Hilfe.
Hast mir dadurch 254 Einträge erspart die ich hätte suchen müssen ;)

Danke für die schnelle hilfe.