Echo is off windows 批处理错误
Echo is off windows batch error
场景
我想要如果用户输入一个值,我得到主机名,如果用户不输入任何值,那么我只回显默认路径。
问题陈述
在 if else 中添加这些条件后,我得到 echo is off if user enters a values.
我该如何解决这个问题?
SET /P USER_INSTALL= Installation Path :
@echo:
if "%USER_INSTALL%"=="" ( echo "------Default path------") else (
ECHO %USER_INSTALL%
FOR /F "usebackq" %%i IN (`hostname`) DO SET HOST=%%i
ECHO %HOST%)
我不确定我是否完全理解你想要做什么,但试试这个:
@echo off
SET /P USER_INSTALL=Installation Path :
if "%USER_INSTALL%"=="" goto IP1
goto :IP2
:IP1
echo "------Default path------"
PAUSE
exit
:IP2
ECHO %USER_INSTALL%
FOR /F "usebackq" %%i IN (`hostname`) DO SET HOST=%%i
ECHO %HOST%
PAUSE
exit
这样可以稍微组织一下代码。我添加了暂停命令,这样您就可以看到它在做什么。对此进行测试时,我没有收到 "echo is off" 错误。如果有效请告诉我!
场景
我想要如果用户输入一个值,我得到主机名,如果用户不输入任何值,那么我只回显默认路径。
问题陈述
在 if else 中添加这些条件后,我得到 echo is off if user enters a values.
我该如何解决这个问题?
SET /P USER_INSTALL= Installation Path :
@echo:
if "%USER_INSTALL%"=="" ( echo "------Default path------") else (
ECHO %USER_INSTALL%
FOR /F "usebackq" %%i IN (`hostname`) DO SET HOST=%%i
ECHO %HOST%)
我不确定我是否完全理解你想要做什么,但试试这个:
@echo off
SET /P USER_INSTALL=Installation Path :
if "%USER_INSTALL%"=="" goto IP1
goto :IP2
:IP1
echo "------Default path------"
PAUSE
exit
:IP2
ECHO %USER_INSTALL%
FOR /F "usebackq" %%i IN (`hostname`) DO SET HOST=%%i
ECHO %HOST%
PAUSE
exit
这样可以稍微组织一下代码。我添加了暂停命令,这样您就可以看到它在做什么。对此进行测试时,我没有收到 "echo is off" 错误。如果有效请告诉我!