“该命令不是内部或外部命令”的 解决方法

在Windows 系统的命令行模式中运行所有命令都提示“该命令不是内部或外部命令,也不能运行可执行文件和或批处理文件”。造成这种情况的原因不为乎以下几种情况: 


1、执行这些命令的可执行文件被误删造成的,如进入系统安装目录的system32目录中发现attrib、ipconfig等可执行文件依然存在,并没有被删除或改动的迹象的话,继续看下一步:

“该命令不是内部或外部命令”的 解决方法_第1张图片




2、在C:\WINDOWS\SYSTEM32目录中直接运行这些可执行文件发现可以调出一个命令执行窗口,如运行命令文件时有错误提示,说明该命令文件已经损坏,运行时一闪即逝,没有错误提示说明该命令文件完好无损的,如没问题,请接着往下看: 

3、输入“CMD”命令进入命令行模式,然后进入“c:\windows\system32”目录运行运行你想要运行的命令(比如ipconfig命令),肯定一切正常,IP地址及DNS等信息全部都能显示出来了。 

“该命令不是内部或外部命令”的 解决方法_第2张图片

   


 造成这种现象的原因是:“我的电脑→属性→高级”标签的“环境变量”设置问题。“系统变量”中的Path项值为空或者是路径而不是c:\windows\system32,所以在其他路径下运行诸如ipconfig的命令系统将无法找到该程序。解决办法:在用户变量中(注意是“用户变量”!而不是“系统变量”,如果将系统变量修改的话,将导致某些应用程序将因找不到路径而无法正常运行!)双击path参数为其设置变量值“c:\ windows\system32”(注意没有双引号)。

“该命令不是内部或外部命令”的 解决方法_第3张图片

 

"确定"后再在命令行模式中输入“你想要运行的命令”就能显示出正确的信息了。 

“该命令不是内部或外部命令”的 解决方法_第4张图片




小提示:如果希望设置多个默认路径可以采用诸如c:\windows\system32;c:\windows的形式,即中间用“;”隔开。
例如,在系统变量path的值里面,就有多个变量,分别用英文状态的分号“;”隔开,

“该命令不是内部或外部命令”的 解决方法_第5张图片

以我的电脑上的设置为例,仔细观察这几个变量值,有如下几个软件在系统变量的Path值里写入了内容:
1.Java的jdk 1.6

“该命令不是内部或外部命令”的 解决方法_第6张图片

2.Microsoft SQL Server 2008 

“该命令不是内部或外部命令”的 解决方法_第7张图片

3.Visual Studio 9.0
“该命令不是内部或外部命令”的 解决方法_第8张图片

4.MySQL 5.1
“该命令不是内部或外部命令”的 解决方法_第9张图片


小知识:什么是环境变量?

    环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等。这点有点类似于 DOS时期的默认路径,当你运行某些程时序除了在当前文件夹中寻找外,还会到设置的默认路径中去查找。简单地说这里的“Path”就是一个变量,里面存储 了一些常用命令所存放的目录路径。 
测试IP地址:ipconfig

你可能感兴趣的:(命令行)