CMD启动时异常显示多余&符号,排查环境变量无果该如何解决
CMD启动时异常显示"This should not be &."的排查解决步骤
- 检查CMD自动启动的注册表配置
按下Win+R输入regedit打开注册表编辑器,依次定位到两个注册表路径:HKEY_LOCAL_MACHINE\Software\Microsoft\Command ProcessorHKEY_CURRENT_USER\Software\Microsoft\Command Processor
查看路径下是否存在名为AutoRun的字符串值——这类值存储了CMD启动时自动执行的命令,是这类启动异常的最高发来源。如果值内容包含截断的脚本片段、未转义的&符号、错误拼接的echo打印语句,就会在窗口弹出时输出对应异常文本。可直接将该值的内容清空,或删除整个值项,重启CMD验证效果。
- 排查自动加载的批处理脚本
检查系统目录、用户主目录下的autoexec.nt、自定义启动批处理文件,定位脚本中是否存在语法错误:比如打印语句缺失成对引号,让脚本把&识别为命令连接符,甚至在调试阶段输出"This should not be &."的提示文本。找到对应异常代码行修正语法即可。 - 校验CMD快捷方式配置
右键点击日常使用的CMD快捷方式,打开属性面板查看「目标」字段,CMD快捷方式的默认目标值为%SystemRoot%\system32\cmd.exe。如果目标字段被篡改,额外拼接了带&的启动命令、错误打印语句,把内容改回默认值即可。 - 用纯净启动模式定位根因
按住Shift键点击CMD启动图标,强制跳过所有自动加载脚本启动纯净CMD窗口。如果此时不再弹出异常提示,即可确定问题来自前述的自动配置项;如果纯净启动仍存在异常,再检查第三方终端工具(如终端增强工具、自定义CMD启动封装器)的内部启动脚本配置,修正其中与&相关的语法错误。
内容的提问来源于stack exchange,提问作者TechnoSwords
相关产品推荐
相关产品推荐

