Board logo

标题: 各位高手,请教一个简单问题 [打印本页]

作者: 小不点     时间: 2004-1-29 00:00    标题: 各位高手,请教一个简单问题
DOS的外部命令和内部命令有什么不同?各有什么特点?

作者: hhhhhh     时间: 2004-1-29 00:00
外部命令就是一个个文件,内部命令是在内存中的,外部命令是可以扩充的,相对来说内部命令就比较稳定了。内部命令有很多,主要是cd\md\del\dir等,外部有format\fdisk等等

作者: 小不点     时间: 2004-1-29 00:00
怎么知道哪些是内部命令哪些是外部命令呢?
谢谢

作者: Kinglion     时间: 2004-1-29 00:00
以下是引用小不点在2004-1-29 15:43:02的发言:
怎么知道哪些是内部命令哪些是外部命令呢?
谢谢


有一个很简单的方法:
进入DOS模式,新建一个文件夹,进入此文件夹,设置DOS环境变量PATH为空(SET PATH= ),此后能执行的命令即为内部命令,反之如显示Bad command or filename 则为外部命令。

另外,您如果在使用Novell DOS或者DRDOS,则在命令行键入 /? 则会获得DOS全部内部命令的列表,请试一试。

不妥之处请各位指导。

作者: Kinglion     时间: 2004-1-29 00:00
以下是引用小不点在2004-1-29 11:38:42的发言:
DOS的外部命令和内部命令有什么不同?各有什么特点?


DOS的内部命令是随着系统启动时就被装入内存的一系列命令的统称,您在命令行状态下任何时候都可以执行,执行不受所在盘符、路径等的限制。它提供一些DOS必不可少的功能操作。如MD、CD、RD、COPY、REN、DEL、ERASE、VER、VOL、DATE、TIME、SET、ECHO、CLS、DIR、PAUSE、VERIFY、FOR、IF、REM、GOTO、PATH、等等。
您如果想获得DOS内部命令的帮助信息,您只需带参数 /?或 /H 执行此DOS命令即可。

DOS的外部命令是以可执行文件方式存在的命令,您只有在需要使用它提供的功能时它才被装入内存执行;而且它必须存在于DOS执行命令的搜索路径中才可以,否则不行执行。
如搜索路径为:SET PATH=c:\dos;c:\windows; 则DOS的外部命令必须在此二个目录中存在才能被执行。

有什么不妥之处请大家指正。

作者: mys     时间: 2004-1-30 00:00
内部命令包含在command.com中。外部命令是独立的EXE或COM文件。

作者: 小不点     时间: 2004-1-30 00:00
楼上的各位大哥,谢谢了,真的是学到了不少东西

作者: 小不点     时间: 2004-1-30 00:00
什么叫DOS环境变量PATH?还有怎么知道DOS的版本?

作者: mys     时间: 2004-1-30 00:00
DOS环境变量是一组公共变量,DOS和DOS程序可以根据它们而调整自己的操作。环境变量不仅存在于DOS中,不基于DOS的WINNT/2000/XP/2003等都有环境变量。
PATH是环境变量之一,它指定可执行文件的搜索路径,当你输入一个DOS命令时,如果不是内部命令,则DOS首先会在当前目录中找文件名相应的EXE、COM、BAT文件,如果找不到,就会在PATH变量指定的目录中依次查找出来并执行。
DOS版本可在DOS下用VER命令查看,WIN95/98/ME中的DOS版本号被隐藏了,它们真正的版本是7.0/7.1(含WIN95OS2)/8.0。

作者: 小不点     时间: 2004-1-30 00:00
怎样设置DOS环境变量PATH为空(SET PATH= )?
谢谢

作者: 小不点     时间: 2004-1-30 00:00
为什么我输入/?或 /H得不到DOS内部命令的帮助信息?