ELSE在这个时候出乎意料

时间:2018-08-30 15:33:25

标签: if-statement cmd conemu

我经常在ConEmu中的Windows命令行上工作,偶尔在给定窗口中工作一段时间后,会收到以下意外错误:

ELSE was unexpected at this time.

当前,它是在粘贴约150行rm命令(可能无关)之后发生的。

一旦出现错误,我将无法在该窗口中使用ELSE语句;我必须开始一个新的Shell进程,这时我的脚本将按预期工作。例如,一旦在窗口中发生该错误,我将观察到以下情况:

C:\> IF DEFINED AN_ENV_VAR (ECHO YES) ELSE ECHO NO
ELSE was unexpected at this time.
C:\> IF NOT DEFINED AN_ENV_VAR (ECHO YES) ELSE ECHO NO
ELSE was unexpected at this time.
C:\> IF DEFINED AN_ENV_VAR (ECHO YES)
C:\> IF NOT DEFINED AN_ENV_VAR (ECHO YES)
YES

一个新的外壳可以提供预期的结果:

C:\> IF DEFINED AN_ENV_VAR (ECHO YES) ELSE ECHO NO
NO
C:\> IF NOT DEFINED AN_ENV_VAR (ECHO YES) ELSE ECHO NO
YES
C:\> IF DEFINED AN_ENV_VAR (ECHO YES)
C:\> IF NOT DEFINED AN_ENV_VAR (ECHO YES)
YES

有什么办法可以修复当前的shell?

1 个答案:

答案 0 :(得分:0)

请检查您的路径是否在任何文件夹中都没有空间,否则将通过错误“ ELSE此时未预料到”。对于运行相同项目的批处理文件