Как сказал Майк Накис , echo off
запрещает только печать команд, а не результатов. Чтобы скрыть результат команды, добавьте >nul
в конец строки, а чтобы скрыть ошибки, добавьте 2>nul
. Например:
Del /Q *.tmp >nul 2>nul
Как и Кристер Андерссон сказал, причина, по которой вы получаете ошибку, в том, что ваша переменная расширяется пробелами:
set INSTALL_PATH=C:\My App\Installer
if exist %INSTALL_PATH% (
становится:
if exist C:\My App\Installer (
Что означает:
Если существует «C: \ My», запустите «App \ Installer» с «(» в качестве аргумента командной строки.
Вы видите ошибку, потому что у вас нет папки с именем «Приложение». Поместите кавычки вокруг пути, чтобы предотвратить это расщепление.