cmd.exe
终端中运行mycommand.exe
时,我都会收到以下错误信息:其次"mycommand.exe"未被识别为内部或外部命令、可操作的程序或批处理文件。
当我尝试运行
C:\Program Files\My-App\Mobile.exe
时,也遇到了类似的错误:"C:\Program"未被识别为内部或外部命令、可操作的程序或批处理文件。
cmd.exe
终端中运行mycommand.exe
时,我都会收到以下错误信息:其次"mycommand.exe"未被识别为内部或外部命令、可操作的程序或批处理文件。
C:\Program Files\My-App\Mobile.exe
时,也遇到了类似的错误:"C:\Program"未被识别为内部或外部命令、可操作的程序或批处理文件。
这是Stackoverflow上经常出现的问题。
这里重要的部分不是错误中显示的命令,而是实际错误所告诉你的内容。
以下是为什么会出现此错误的简要说明。
cmd.exe
是一个终端窗口,依赖于输入和系统环境变量来执行你请求它做的事情。 它并不知道所有内容的位置,也不知道何时区分由空格(如空格和tab)分隔的命令或可执行文件名或包含空格作为开关变量的命令。
如何修复这个问题:
当实际命令/可执行文件失败时
首先要确保,该可执行文件实际上已安装?如果是,则继续进行剩余操作;如果没有,请先安装。
如果您正在尝试从cmd.exe
运行任何可执行文件,则需要告诉cmd.exe
该文件位于何处。 有两种方法可以做到这一点。
指定文件的完整路径。
"C:\My_Files\mycommand.exe"
将文件位置添加到环境变量中。
进入:
------> 控制面板->系统->高级系统设置->环境变量
在系统变量
窗口中,找到path
并选择编辑
现在只需将您的路径添加到字符串末尾,用分号;
分隔:
;C:\My_Files\
保存更改并退出。您需要确保关闭并重新打开所有已经打开的 cmd.exe
窗口,以便重新导入环境变量。
现在,您应该能够在任何路径下,在 cmd.exe
中运行 mycommand.exe,因为环境已经知道它的路径。
如果出现类似于 C:\Program
的错误
这是一个非常简单的错误。在 cmd.exe
终端中,每个空格后面的字符串都被视为不同的命令,您只需用双引号将整个路径括起来,以使 cmd.exe
将其视为单个字符串,而不是多个命令。
因此,要执行 C:\Program Files\My-App\Mobile.exe
,只需运行:
"C:\Program Files\My-App\Mobile.exe"
当你想从命令提示符(cmd.exe)或批处理文件运行可执行文件时,它会:
%PATH%
环境变量指定的所有位置中搜索可执行文件。如果文件不在这两个选项中找到,则需要执行以下操作之一:
%PATH%
中(仅建议极度谨慎)。您可以从命令提示符查看在%PATH%
中指定的位置:Echo %Path%
。
由于报告错误,我们可以假设Mobile.exe
不在当前目录或%Path%
变量指定的任何位置,因此您需要使用1.
、2.
或3.
。
1.指定位置的示例
C:\directory_path_without_spaces\My-App\Mobile.exe
或者:
"C:\directory path with spaces\My-App\Mobile.exe"
或者您可以尝试:
Start C:\directory_path_without_spaces\My-App\Mobile.exe
或者Start "" "C:\directory path with spaces\My-App\Mobile.exe"
在标题为空的情况下,可以在这些双引号之间可选地添加字符串。
2.
的示例:
CD /D C:\directory_path_without_spaces\My-App
Mobile.exe
或者CD /D "C:\directory path with spaces\My-App"
Mobile.exe
你也可以使用 /D
选项与 Start
一起使用,将可执行文件的工作目录更改为由"start"命令运行的目录。Start /D C:\directory_path_without_spaces\My-App Mobile.exe
或者Start "" /D "C:\directory path with spaces\My-App" Mobile.exe
%PATH%
变量内容的建议不感兴趣。如果有其他选项可用,我不希望给人留下改变它们的印象。Gerhard提供了一些关于如何更改系统变量的建议,也许您的信息是针对他的! - Compo