Wie Mike Nakis sagte, echo off
verhindert nur das Drucken von Befehlen, nicht Ergebnisse. Um das Ergebnis eines Befehls >nul
auszublenden, fügen Sie am Ende der Zeile hinzu, und um Fehler auszublenden, fügen Sie hinzu 2>nul
. Zum Beispiel:
Del /Q *.tmp >nul 2>nul
Wie Krister Andersson sagte, ist der Grund, warum Sie einen Fehler erhalten, dass Ihre Variable mit Leerzeichen erweitert wird:
set INSTALL_PATH=C:\My App\Installer
if exist %INSTALL_PATH% (
Wird:
if exist C:\My App\Installer (
Was bedeutet:
Wenn "C: \ My" vorhanden ist, führen Sie "App \ Installer" mit "(" als Befehlszeilenargument aus.
Sie sehen den Fehler, weil Sie keinen Ordner mit dem Namen "App" haben. Setzen Sie Anführungszeichen um den Pfad, um diese Aufteilung zu verhindern.
if exist "%INSTALL_PATH%" (...