Windows 命令行:“未被识别为内部或外部命令、可运行程序或批处理文件。”

Windows 命令行:“未被识别为内部或外部命令、可运行程序或批处理文件。”

当我在 Windows 7 中运行 cmd(在 Windows 运行中输入'cmd')时,显示以下错误:

在此处输入图片描述

‘-p’ 不被识别为内部或外部命令、可运行程序或批处理文件。

我尝试检查环境变量中的 PATH。运行后echo %PATH%得到以下结果:

C:\Windows\System32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0;C:\xampp\php;

我检查了 PATH 指向的所有目录。一切似乎都已就绪。我不明白的是 在哪里被'-p'调用。我认为这与 有关系,cmd因为它只在我调用时出现cmd,而不是在我运行ipconfig或时出现ping

答案1

您可能在注册表中设置了“AutoRun”命令。有两个注册表项,一个针对每个用户,一个针对每台计算机,它们可以定义每次cmd.exe启动命令处理器 ( ) 时运行的命令。它们实际上列在 中cmd /?

无论如何,尝试运行cmd /d并查看是否会产生相同的消息。该/d标志表示“不运行 AutoRun 命令”,这非常适合测试这一点。

注册表值为:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun

勾选两者。默认情况下,两者都不应该存在。您可能希望修复您的命令字符串,甚至完全删除它们。

有关的:http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


或者,您可以设置一个批处理脚本或类似脚本cmd,其名称为 ,而不是本机cmd。尝试使用命令where cmd打印出cmd路径中的 列表,按执行顺序排列。如果 中除了 之外/之前还有C:\Windows\System32\cmd.exe,您可能希望删除它们,或从 PATH 环境变量中删除它们的路径。

相关内容