Batch DOS IF command hulp nodig

Status
Niet open voor verdere reacties.

Brummos

Gebruiker
Lid geworden
24 apr 2007
Berichten
49
hallo allen,

ik ben bezig met het maken van een batch bestandje en nu wil ik daarin hebben dat als een bestand bestaat, dan mag het batch bestand verder gaan, anders moet deze een melding geven dat het niet bestaat.

ik heb nu:
IF EXIST C:\Program files\WinZip\WZZIP.exe GOTO START ELSE GOTO FALSE3

maar op een of andere manier gaan hij altijd door, ook al maak ik van het bestand dat moet bestaan 7324237423.exe.

kan iemand me helpen met dit?
 
Het zou er ongeveer zo uit kunnen zien.
Onder :start kan je dan de programma opdracht zetten

Code:
@echo off
cls

IF EXIST C:\Program files\WinZip\WZZIP.exe GOTO START 

:fout
echo bestaat niet
goto end


:start
echo het bestaat

:end
 
hier me batch bestandje

COLOR 1F
@ECHO OFF
CLS

IF EXIST C:\Program files\WinZip\WZZIP.exe GOTO START ELSE GOTO FALSE3

:START
ECHO. *******************************************************
ECHO. ** BEZIPPED(R): **
ECHO. ** **
ECHO. ** INFO: **
ECHO. ** **
ECHO. ** [TYPENUMBER] **
ECHO. ** Found in: G:\BA\BLDDATA\ **
ECHO. ** **
ECHO. ** [DELIVERYNUMBER] **
ECHO. ** Found in: G:\BA\BLDDATA\[TYPENUMBER]\ **
ECHO. *******************************************************
ECHO.

:TYPENUMMER
SETLOCAL
ECHO. Insert the typenumber:
SET /P TYPENUMMER=%TYPENUMMER%
IF %TYPENUMMER%.==. GOTO FALSE1
ECHO.
GOTO LEVERNUMMER

:LEVERNUMMER
ECHO. Insert the deliverynumber:
SET /P LEVERNUMMER=%LEVERNUMMER%
IF %LEVERNUMMER%.==. GOTO FALSE2
ECHO.
GOTO COMMAND

:COMMAND
ECHO.
MKDIR G:\BA.ZIP\%TYPENUMMER%
WZZIP -A -M G:\BA.ZIP\%TYPENUMMER%\LEV%LEVERNUMMER%.zip @G:\BA\BLDDATA\%TYPENUMMER%\lev%LEVERNUMMER%.dfl
MOVE G:\BA\BLDDATA\%TYPENUMMER%\lev%LEVERNUMMER%.dfl G:\BA.ZIP\%TYPENUMMER%
ECHO.
ECHO. Files are moved to G:\BA.ZIP\%TYPENUMMER%\LEV%LEVERNUMMER%.zip
ECHO.
WZZIP -A -M G:\BA.ZIP\%TYPENUMMER%\DBF%LEVERNUMMER%.zip @G:\BA\BLDANAL\%TYPENUMMER%\data\lev%LEVERNUMMER%.bfl
MOVE G:\BA\BLDANAL\%TYPENUMMER%\data\lev%LEVERNUMMER%.bfl G:\BA.ZIP\%TYPENUMMER%
ECHO.
ECHO. Files are moved to G:\BA.ZIP\%TYPENUMMER%\DBF%LEVERNUMMER%.zip
ECHO.
ECHO. DONE!
GOTO FINISH

:FINISH
ENDLOCAL
ECHO.
ECHO. Menu:
ECHO. 1 = Again
ECHO. 2 = Exit
G:\BA\CHOICE /N /C:12>NUL
IF ERRORLEVEL 2 GOTO END
IF ERRORLEVEL 1 GOTO START

:FALSE1
ECHO. No input detected!
ECHO.
GOTO TYPENUMMER

:FALSE2
ECHO. No input detected!
ECHO.
GOTO LEVERNUMMER

@ECHO OFF
:FALSE3
ECHO. Winzip is not installed!
ECHO. Please contact your system administrator.
ECHO.
pause

:END
EXIT
 
Laatst bewerkt:
Het zou er ongeveer zo uit kunnen zien.
Onder :start kan je dan de programma opdracht zetten

Code:
@echo off
cls

IF EXIST C:\Program files\WinZip\WZZIP.exe GOTO START 

:fout
echo bestaat niet
goto end


:start
echo het bestaat

:end

dit heb ik geprobeerd, ma hij zegt constant dat het niet bestaat, maar ik heb dat bestand toch echt daar staan, dus ik denk dat het GOTO command niet werkt en dat hij gewoon door loopt naar :fout


misschien kunnen het IF command en GOTO command niet samen?
 
Het heeft te maken met een te lange en een spatie in program Files.
Je kunt dit beter afkorten in C:\Program~\WinZip\WZZIP.exe GOTO START
 
ik heb het antwoord al:D

je had de tilde op de verkeerde plek gezet

fout:
C:\Program~\WinZip\WZZIP.exe GOTO START

goed:
C:\Progra~1\WinZip\WZZIP.exe GOTO START

dos doet het kennelijk op deze manier

ma dank voor alle hulp, want ik ben wel weer verder gekomen^^
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan