windows - ring til BATCH virker ikke

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har oprettet fil kaldet a.bat


call echo. > outfile
call dup.bat file1 outfile 7
call MORE file2 >> outfile
call dup.bat file1 outfile 10


når jeg udfører det, er outputen


C:>a
C:>call echo.  1>outfile
C:>call dup.bat file1 outfile 7
C:>


Jeg forstår ikke, hvorfor det stopper undskyldningen efter at have udført den første batch


batchet er et svar på dette spørgsmål
hvordan man laver loop i batch?


dup.bat


@ECHO off
SET infile=\%1
SET outfile=\%2
SET times=\%3

rem IF EXIST \%outfile\% DEL \%outfile\%
FOR /L \%\%i IN (1,1,\%times\%) DO (
    call MORE \%infile\% >> \%outfile\%
)


Måske bliver en vis lydløs undtagelse kastet? hvordan man fanger det?


Nogle ideer?

Bedste reference


Jeg tror det virker bare: eksekveringen stopper ikke, kun ekko stopper!


Kontroller din outputfil outfile og verificer dens indhold. Grunden til at du ikke ser de to sidste linjer af a.bat er at dup.bat vender ekko ud ...