2017-04-16 1 views
0

Ich brauche Hilfe mit meinem if-Befehl in meinem Dateikonverter. Ich halte den Befehl ein wenig ändern, aber es gibt nur mitBatch-Datei - IF Fehler

(Ausfahrt) war zu diesem Zeitpunkt unerwartet.

Und dann schließt es die Eingabeaufforderung. Der if Befehl lautet:

wenn% Erfolgs% == 0 (Ausgang) else (zur Konverter)

Bitte helfen.

+1

In ca Ses so, sicher sein, "ECHO OFF" Anweisungen zu entfernen oder zu kommentieren, damit die Verarbeitung gezeigt wird. Am Ende eines .bat-Skripts möchten Sie wahrscheinlich "EXIT/B". Siehe 'EXIT /?'. – lit

+0

Wenn Sie nur das Batch-Skript beenden und das Befehlsfenster nicht schließen möchten, verwenden Sie 'GOTO: EOF' anstelle von' exit'. EOF ist eine implizite Bezeichnung am Ende jeder Batch-Datei. – user1016274

Antwort

2

Aller Wahrscheinlichkeit nach ist success nicht zugewiesen, dh. auf nichts

if "%success%"=="0" (exit) else (goto converter) 

gelingen sollte - aber exit erinnern beenden die cmd Sitzung ...

+0

Okay, das hat nicht funktioniert, aber ich habe es behoben. Ich musste "if" eingeben% success% "==" 0 "(exit)" – Puppy288

+1

Ich kann keinen Unterschied sehen. Umgeben einer Saite in Backticks wird den Hintergrund schattieren, einfach-'*' wird kursiv und doppelt-'*' fett. Kann bei der Angebotszählung helfen. – Magoo

+0

Ich habe Leerzeichen hinzugefügt. – Puppy288

0

Stattdessen gehe Verwendung Aufruf der Verwendung und schreiben Ausfahrt nach dem if - else Bedingung

set /A success=1 
if %success%==0 (exit) else (call :converter) 
exit 
:converter 
echo In Conveter Function 
pause 

Am Ende von If-Else müssen Sie Exit schreiben, ansonsten wird die Converter-Funktion zweimal aufgerufen