DOS学习

更新时间:2024-01-07 16:11:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

DOS 概述及入门 ——DOS的启动

电脑刚启动时,要先从某个磁盘上将一些系统程序读入内存后才能正常工作,我们将这个磁盘叫做启动盘。

通常,我们用A盘或C盘作为启动盘,在特殊情况下,硬盘的其它盘符和少数电脑的光盘也可以作启动盘。制作启动盘需要使用sys命令,可以参看后面的命令部分。

DOS系统启动时,要先从启动盘中读取两个系统文件IO.SYS、MSDOS.SYS,然后在启动盘的根目录下寻找并执行 CONFIG.SYS、COMMAND.COM、AUTOEXEC.BAT三个文件。其中IO.SYS、MSDOS.SYS和 COMMAND.COM这三个文件缺一不可,否则电脑将无法正常启动

CONFIG.SYS和AUTOEXEC.BAT这两个文件是用来配置系统运行环境和自动执行一些命令,它们对电脑的运行性能以及许多设备的驱动起到了至关重要的作用,我们可以根据自己的需要对它们的内容进行修改,

autoexec.bat叫做自动批处理文件,它是批处理文件的一种,因为DOS启动时会自动运行它,所以叫做自动批处理文件。你可以把自己每次启动电脑时都要运行的程序放在里面。 如果电脑在根目录下找不到这两个文件,也是可以运行的,但有许多复杂的软件和设备将无法正常工作。比如光驱、声卡以及Windows程序等。所以,初学者应注意不要将上面的几个文件删除,否则,电脑将不能正常工作。

DOS 常用命令 ——dir

前面我们说过,在DOS下我们用输入命令的方式来指挥电脑工作。那么把我们想说的话输入到电脑里,电脑就能明白吗?

1

显然这样是不行的,DOS下的电脑只能明白一些特殊的英文命令的含义,只有你输入这些命令,电脑才会听你的指挥,否则它只会傻傻地说:“Bad command or file name.”这是在说它搞不懂你说什么。那么,DOS下的命令有哪些呢?

DOS的命令分为内部命令和外部命令,内部命令是随command.com装入内存的,而外部命令是一条一条单独的可执行文件。

内部命令都集中在根目录下的command.com文件里,电脑每次启动时都会将这个文件读入内存,也就是说在电脑运行时,这些内部命令都驻留在内存中,用dir是看不到这些内部命令的。而外部命令都是以一个个独立的文件存放在磁盘上的,它们都是以com和exe为后缀的文件,它们并不常驻内存,只有在电脑需要时,才会被调入内存。

我们先来看几个最常用的命令,以便对DOS命令有更深的了解。DOS下使用频率最高的命令莫过于dir命令了,dir是英文单词directory(目录)的缩写,主要用来显示一个目录下的文件和子目录。

我们可以试着在提示符后输入dir,再按Enter回车键,无所谓大小写,如果输入错误了,可以按Backspace键来修正。如果你的当前目录下有很多文件或子目录,会发现内容还没有看清楚,就哗的一下滚过去了?

别着急,想看清楚还不简单,dir命令是可以带参数的,键入dir/p试试看,看,这先计算机在显示完一屏内容后,停了下来。

看到最后的一行英文没有,这行英文的意思是:如果你看完了这一屏,随便敲一个键就可以看下一屏。那就敲个键试试,随便哪个都行。 好,是不是换了一屏怎么样,是不是很方便呢?

如果你觉得用dir/p分屏显示还是太麻烦,你用这个命令试试,从键盘上输入dir/w试试看。这回所有文件在一屏内都显示出来了,但好象少了点什么,原来文件的大小和生成时间都被省略了。如果你只想知道目录内有什么文件和子目录,而不关心文件的生成时间和大小的话,那么使用dir/w,以短格式方式显示是不错的选择。

2

dir命令不但可以查看目录中有什么文件,还可以查看目录中某个文件的信息,例如输入dir abc,就是查看当前目录中文件abc的信息,包括它的大小和生成时间。

如果执行dir abc后,显示是“File not found.”则说明当前目录中没有abc这个文件,所以还可以用dir命令来查找文件。比如用dir命令查找当前目录中是否有win.com这个文件,只要输入dir win.com。

dir命令不但可以查找和显示一个特定的文件,还可以显示一类文件。例如输入dir *.bat,显示的就是所有扩展名是bat的文件。看下图

那这里的*是什么意思呢?在DOS命令中,*在文件名中出现是代表任意字符的意思。例如,A.*就代表了文件基本名是A,扩展名是任意的所有文件。那么dir a.* 就是把文件基本名是a的所有文件都显示出来。如果用dir A*.*,将会出现什么结果呢?结果是显示了文件基本名以A开头的所有文件。再深入一点,dir *.*是什么意思呢?在这里文件基本名和扩展名都是任意的,那就等于代表了所有文件,所以这和只输入dir的作用是相同的。 因为*可以代替任意字符,所以我们称之为通配符。其实通配符不只*一个,现在我们再来看看另一种通配符----?。

?通配符和*的区别是什么呢?*可以代替文件名中的多个字符,而?只能代替文件名中的一个字符。比如a*.*是代表所有文件基本名以a开头的文件,而a?.*是代表文件基本名只有两个字符,并且第一个字符是a的所有文件,同理a??.*是代表文件基本名只有三个字符,并且第一个字符是a的所有文件。

两者还有一个区别,在文件名中出现*后,其后的所有字符都不起作用,比如A*.*和a*b.*是没有任何区别的,但A*.*和A*.com就不一样了,因为中间隔了一个分隔符,*的作用不能超过分隔符。

3

在作用不超过分隔符这一点 上,?和*是一致的,但是,无论在文件基本名或扩展名中出现在?后,后面的字符仍然起作用。例如,a?.bat和a?b.bat是不同的意思,前者代表了文件扩展名是bat,而文件基本名是两个字符,且第一个字符是a的所有文件,后者代表了文件扩展名是bat,而文件基本名是三个字符,且第一个字符是a,第三个字符是b的所有文件。

最后再讲一点吧,都差点忘了这个小问题了。在使用通配符时,文件基本名和扩展名中最多只能各出现一个*,而?可以在不超过文件名和扩展名长度的前提下出现多个。 例如:这三个文件名a???.b??、 a????b?.?c?及??a?b??c.??d 都是可以的。

最后来个总结吧,dir命令最大的用途就是让你了解磁盘到底都有些什么,还剩下多少存储空间。最后还有一个小窍门,如果你想知道A盘上都有什么,你不必先输入a:,变换当前驱动器为A盘后,再敲dir,你可以直接键入dir a:。不信试试看,千万别忘了插入软盘哟!

——cd

我们已经使用过cd命令,大家肯定还记得吧。cd是英文change directory(改变目录)的缩写,也是最常用的命令之一。顾名思义,如果想要进入一个目录,显然该采用这个命令了。

在讲cd命令之前,我们先来谈谈提示符是什么意思。现在的提示符是c:\\>

这个c:说明现在的工作盘是c盘,即当前盘是硬盘。这个紧接着c:后面的\\告诉我们,当前的工作目录是根目录。这个>的作用只是为了把工作目录和我们要输入的命令分隔开来,没有其它的意义。这样,我们就可以从提示符上看出当前的工作盘和工作目录是什么,你如果清楚了这一点,那么学习cd命令就变得轻松自如了。

好,现在我们想进入dos目录,该怎么办呢?对了,直接输入cd dos就行了。

你注意,提示符变了,变成 c:\\dos>了。这就告诉我们,我们当前的工作目录是c盘根目录下的dos子目录。 如果想退回上一层目录,就键入cd ..,看提示符又变回来了。是不是很简单呢?进入子目录就输入cd+空格+子目录名,想返回上一层目录,就输入cd ..(两点)。

现在你来练习一下,要进入windows子目录,怎么办?当然是输入cd windows。 在windows目录下,还有一个子目录:system,再进去看看,输入cd system,好,暂停一下,这时我想要返回到根目录,这该怎么办?用cd ..吗?那当然可以,不过得用两次。我们有更好的办法,其实只需键入cd\\三个字符可以一下子就回到根目录,自己试试吧。

4

cd命令的用途就是让我们可以到任何一个目录去。我们把不同功能的文件分别安排在不同的目录内,是为了管理方便,可是当我们要使用某个文件时,我们就得到该文件所在的目录中去。 比如说,要使用wps,就要到wps所在的目录;要用windows,就要到windows所在的目录。事实上,你学会了cd命令,你就可以到达磁盘中的任何一个目录了。不过有一点提醒你注意,如果想要到非当前磁盘的某个目录时,要先输入盘符,回车后,等当前盘变为另一个磁盘时,你才可以使用cd命令到达你想要去的目录。

——md和rd

不知你想过没有,磁盘上的这些目录都是哪来的呢?其实,这些目录都是我们自己建立的,我们建立这些目录的目的,就是为了分类组织文件,如果我们有一类新的文件,就需要再建立一个新的目录。今天我们要学的两个命令就是进行目录操作的,它们是md(make directory--创建目录)和rd(remove directory--删除目录)。

这两个命令很简单,比如我叫小博士,我要把自己的文件都放在一个目录中,我就可以输入md xbs,建立我的目录。这时你用dir命令看一看,就会发现根目录下多了一个目录XBS。

你不妨练习一下,建立一个名字叫xyz的目录,再输入dir,是不是可以看到xyz目录啦,如果你看到了,你就成功了(呵呵,这课也就完成一半了)。现在让我们到这个目录中去,键入cd xyz,注意,提示符是不是变了。好,输入dir命令。很奇怪是吧?我们刚刚建立了这个目录,按理说,这个目录中应该什么都没有的。其实,不管你建立什么目录,这个. 和 .. 都会在目录中出现,因为. 代表此目录本身,.. 代表此目录的上一层目录。显然,一个目录既然已经存在了,就不可能没有本身,也不可能没有上一层目录。(..你使用过的,记得吗?就是cd ..,用来返回上一层目录)。

5

再练习一次,在xyz目录下建立一个目录:abc,(正确方法是输入md abc)用 dir命令看一下,abc目录显示出来,就说明你已经成功学会建目录了。

既然能建立目录,当然也就可以把它删除,rd命令就是干这活的。比如想把abc目录删除,输入rd abc就可以了。不信再用dir命令看看,abc目录是不是没了。是不是很简单,要删除当前目录下的某个子目录,输入rd空格加上子目录名就可以完成任务。 不过使用RD命令可得注意几点问题(要不然你删一辈子也别想删除某些目录),好好看看下面几点吧:

现在你再练习一次(这次你成功了,就胜利出师了,可以安心学下一课了),如果想删除你现在所在的xyz目录,该怎么办呢?

正确答案:输入cd ..命令退回到上一层目录,再输入rd xyz将xyz目录删除。

——copy

copy在英文中是复制的意思,所谓复制就是原来的文件并没有任何改变,重新产生了一个内容和原来文件没有任何差别的文件。下面是copy命令的格式及及该注意的一些问题:

6

现在让我们来看一个例子,根目录下有一个文件叫做 autoexec.bat,如果我们想将它复制一份叫做autoexec.old,就可以输入copy autoexec.bat autoexec.old 键入dir,除原有的autoexec.bat文件外,出现了一个autoexec.old文件,而且这两个文件的大小都一样。

如果我们想把dos目录下的edit.com复制到当前目录,就从键盘上敲入 copy c:\\dos\\edit.com(注意,省略了目的目录名和文件名),源文件名是C盘根目录下dos目录中的edit.com文件。在这里指出了所在的驱动器及目录,而目的文件被省略了,这表示将文件复制到当前目录中,名字不变,也是edit.com。

如果你想把文件复制到另一个驱动器,比如说复制到A盘上,可以输入 copy edit.com a:(得记住往A驱动器里插磁盘哦)。

copy命令也可以使用通配符,例如要复制A盘上以K开头的所有文件,可以输入copy a:k*.*,如果要复制C盘根目录下所有扩展名是bat的文件到zht目录里,可以输入copy c:\\*.bat c:\\zht。

复制文件的主要目的有两条,一是为重要的文件作一个备份,以免被删除后追悔莫及;二是在不同计算机之间交换信息,你可以将你的工作成果复制到软盘上,交给你的上司、同事,也可以把它带回家里。 最后要提一句的是,拷贝文件和复制文件是没有任何区别的,拷贝是copy的音译。

——del

del即delete(删除)的缩写,显然它的作用就是“干破坏”删除文件。

复制文件有点复杂,删除文件就很简单了。你看,如果我要删除a.bat文件,输入del a.bat就可以完成任务。

7

简单吧,del命令的格式就是如此简单:del 文件名。 要删除当前目录中的某个文件,输入del空格再加上文件名就可以了。现在你可以试着试删除不要的废文件了。 要删除一类文件,可以使用通配符。例如del *.tmp,就是把所有扩展名是tmp的文件都删除。

你也可以删除当前目录中的所有文件,命令很简单:del *.*或del .。

这时计算机会告诉你此目录的所有文件都将被删除,同时问你是否继续,

如果你不想删除,输入n(no),如果你确实要删除,输入y(yes)。

del *.*或del .一般用于在删除子目录之前,先删除目录中的所有文件。(记住,初学者慎用)

del命令还可以删除非当前目录中的文件,例如del a:\\bmp\\sea.bmp,就是把A盘上bmp目录下的sea.bmp文件删除。你可以试着删除C盘temp目录内的所有文件,正确方法是输入del c:\\temp\\. 或 del c:\\temp\\*.*,然后再输入y。

删除无用的文件,可以使磁盘的可利用空间增大。但在删除文件之前,你最好知道此文件的用途,确定没有用之后,才可以删除,否则追悔莫及。尤其使用del .和del *.*时要更加注意,因为一个目录中的文件都将被删除。

——ren和type

如果想给一个文件改个名字,可以用ren(rename)命令。ren命令的格式是:ren 源文件名 目的文件名。

例如把abc.txt改成bne.dat,就可以输入ren abc.txt bne.dat。

你可以试试看,再改回来,把bne.dat改名为abc.txt。abc.txt。 注意:如果用ren命令更改非当前目录中的文件名,那么源文件名和目的文件名要在同一个目录内。

8

讲了这么多关于文件的操作,是不是还没见过文件长什么样?学完下面这个type命令,你就可以知道文件里写了什么东西。

type命令的格式就是:type 文件名。比如说,我想知道abc.txt文件的内容,就从键盘上输入type abc.txt 。

现在你可以试着操作一下,看看各个文件里有些什么东西,是不是很有成就感。好了,你已经掌握了type命令,不过我还想提醒你一下,除了文件扩展名是txt的文件,对其它文件你最好不要使用type命令,否则屏幕上可能会出现很多怪模怪样的符号,还会嘀嘀地乱叫,弄得你心烦意乱。

——format

现在用电脑的人都知道软盘,但你知道新买来的软盘是不能直接使用的吗?(这概念有点过时,因为现在有很多厂家生产的软盘都先帮你格式化过,不过这命令还是不能不学,因为太有用)新买的软盘你既不能用copy命令向软盘上复制文件,也不能用dir命令查看软盘上的内容,甚至从键盘上输入A:都会引起错误。这是为什么呢?

因为软盘在使用前需要先格式化,在软盘上作出许多位置标记,然后才能向上面填写数据和文字,这就好象在一张白纸上画格子,然后再在这些格子中写字一样。这个在软盘上打格子的过程,就叫格式化。给软盘格式化,要使用format命令。

format命令的格式很简单: 格式化A盘,就是format A:,格式化B盘,就是format B:。

请你看一个例子,从键盘上输入format A:

这时计算机就让你在A驱动器中插入磁盘

你插入磁盘后,按一下回车键,计算机就开始对软盘进行格式化。 屏幕上显示已经完成的百分比

9

格式化完成之后,出现提示让你给磁盘起一个名字。你可以输入你喜欢的名字,也可以直接敲回车不输入名字。

接下来,计算机会向你报告磁盘的总空间和可利用空间,

如果总空间和可利用空间相等,说明磁盘空间全部是好的。如果可利用空间小于总空间,说明有一部分磁盘坏了。

看到最后一句话没有,这是计算机问你是不是还要格式化其他软盘,如果你只需格式化这张软盘,就键入N,如果还要格式化其他软盘,就键入Y。

现在你可以练习一下,格式化一张无用的软盘看看自己掌握怎样。

有一件事必须告诉你,如果要格式化的不是新盘,format命令会把磁盘上的所有文件都删除掉,所以在格式化之前,你要确认磁盘中的内容全都是无用的,否则将会给你带来很大损失。切记:不要尝试对硬盘使用format命令,除非你知道自己在干什么,否则你将丢失你电脑内的一切信息。

10

——diskcopy

我们已经学过复制文件,但你们知道磁盘也可以复制吗?好,这节就讲这个东东,diskcopy,翻译成中文就是磁盘复制。所谓复制磁盘就是复制出一个和原来磁盘内容一模一样的磁盘,其实和复制文件也差不多。

diskcopy命令的格式很简单:diskcopy 源驱动器名 目的驱动器名。举个例子来说,如果要在A驱动器上复制磁盘,就输入:diskcopy a: a: (奇怪吧,哪来两个A盘,且看下文电脑是如何理解的)。

输入diskcopy a: a:命令后回车,电脑提示让你插入源盘

插入磁盘后,随便敲一个键,计算机就开始读源盘上的内容,

读完原盘后,电脑会叫你插入插入磁盘,原来电脑是这样理解两个A盘的,把原盘取出,再插入要写的磁盘,呵呵,还有够聪明的。

换完盘后,按任意键,计算机开始向磁盘上写入源盘的内容。

11

写完之后,计算机会问你是否再复制一张和源盘一样的磁盘,如果你不想复制,敲入N;

这时计算机会再问你是否进行另一张磁盘的复制工作(还真够烦的,啰啰嗦嗦),如果没有其它磁盘需要复制,键入N。

有个小问题提醒你注意,如果你有两个驱动器,当然可以不这样靠替换磁盘的手段,可以直接用diskcopy a: b:,一次把工作做完,不过有个前提,就是你的两个驱动器的规格必须是一样的。

最后大家肯定要问,这命令有啥用啊,其实也很简单,它的主要用途就是用来备份。比如我们的电脑在刚买来时,会随机附带一些设备驱动程序磁盘,这些驱动程序在以后都有可能用到,为防止这些磁盘的损坏,一定要将它们都备份一套,这时,使用diskcopy命令是比较快捷和方便的。

——deltree和mem

还记得rd命令吧?用rd命令删除目录时,要先把目录中的文件删除,如果目录内还有子目录,就需要先进入此目录内,用rd命令把子目录删除。如果子目录下还有更深一层的子目录和文件,就要重复上述工作,可以想象,当目录层数很多时,删除起来就会相当麻烦。为此DOS提供了一条快速删除目录的命令--deltree,这条命令不管目录下面有多少子目录和文件,都会一次性删除。

我们可以来试试,比如有个目录abc需要删除,就拿deltree这个大砍刀试试。输入deltree abc,这时计算机会问你是否真的要删除,键入y后,目录就被删除了。

利用deltree命令确实可以很方便地删除目录,但如果误操作之后,损失也是很大的,所以在使用deltree命令之前,要确认每个子目录下的文件都是没有用的。对于初学者,最好慎用该命令。

12

mem是memory的缩写,该命令用来查看你的计算机内存有多少,以及内存的使用情况。

你试试从键盘上输入mem命令:mem,然后回车

上面看到的就是计算机显示的关于内存的情况,我们可以看到我机器的内存为24,576K,已使用22,947K,还剩下1,629K可用。

看到显示数据的第一行,这是关于基本内存情况的介绍,640K是基本内存的总值, 已用去35K,还剩下605K可用内存,这个值很重要,它的大小决定了你在dos中能执行什么程序,当基本内存剩余值较小时,就不能执行一些较大的程序。

mem命令还可以用来粗略地判断一下电脑是否染上了病毒。因为,DOS基本内存总值一般应显示为640K或639K。如果电脑染上了病毒,这个值往往会改变,比如会变成638K或634K等,当你发现自己电脑上的这个值不为640K或639K时,一般情况下,电脑就已经染上病毒了,应该尽快用杀毒软件杀毒。当然,也有很多病毒并不改变这个值,所以,我们要经常用杀毒软件检查和清理电脑。

——chkdsk

chkdsk是check disk的缩写,用来检查你的磁盘的使用情况。

chkdsk命令的格式是: chkdsk 磁盘名,例如要检查A盘使用情况,就输入chkdsk A: ,检查c盘使用情况,就输入chkdsk C: ,如果直接输入chkdsk,就检查当前磁盘的使用情况。

我们现在来试试看,输入chkdsk命令,下面显示出一大堆信息,看看

13

旁边的文字显示了这些信息是关于什么的,比如第一行显示的是磁盘总空间有540,672,000 bytes。依此类推,第五行显示的是磁盘可用空间为215,531,520 bytes。

——sys

平常应用时,我们一般用C盘启动,启动后,提示符显示为C: ,但有时我们也需要由A盘来启动,比如,电脑感染了病毒,就要用无毒的软盘启动后,再用杀毒软件杀毒。在正确的设定下,将具有启动功能的软盘插入A驱动器中,电脑启动后,提示符为A: 。那么,我们怎样才能使一张软盘具有启动功能呢?

DOS为制作启动盘专门提供了一条命令,这就是sys命令。sys命令的格式很简单: sys 驱动器名,例如在C盘提示符下输入: sys a:,就是将C盘上的系统文件传输到A盘上,把A驱动器中的磁盘制作成启动盘。如果在A盘启动的情况下, sys c:就是将A盘上的系统文件传输到C盘上。

除了sys命令,还可以使用format a:/s命令在格式化磁盘的同时制作系统盘。如果一张软盘具有启动功能,那么它的根目录下一定有io.sys、msdos.sys和command.com三个文件,而且,前两个文件必须处于磁盘最前面的磁道上。

当我们用dir命令查看刚制作的启动盘时,我们可以看到根目录下有COMMAND.COM文件,却看不到IO.SYS、MSDOS.SYS这两个文件。其实,这两个文件是系统文件,直接用dir命令是看不到的,如果我们用dir/as命令就可以看到它们了,这个命令的作用是查看系统文件。另外提一下,我们不能简单地用copy命令来制作启动盘,因为用copy命令拷贝的系统文件并不一定能放置在最前面的磁道上。

14

——path

在DOS提示符下,如果我们要执行某个可执行文件,电脑会在磁盘上寻找这个文件,如果不经过特殊处理,它只在当前目录下寻找,如果没有找到则提示出错。就像下面一样,出现这样的提示:

这也就是说,如果要执行某个文件前,都要将当前目录转换到它所在的目录,显然这是一件很麻烦的事情(电脑是不是很笨啊,不用怀疑这句话的正确性了,我证明过n遍了,我不说,它什么都不做,呵呵)。

为了解决这个问题,DOS提供了一条Path命令,如果在Path命令中定义了某个目录,那么你在任何地方,都可以直接执行Path中指定目录里的文件。(简直太爽了,这可减少了很多麻烦)

path命令的格式很简单: path 目录名,如果有很多目录,中间就用;(不要记错了,是分号不是逗号)隔开。要加入新的目录,就在最后一个目录的后面加一个; 然后再输入新的目录名就可以了。

讲个例子吧,比如,path=c:\\dos;c:\\windows;c:\\ 这条命令就是说,当我们执行一个文件时,电脑先在当前目录下查找这个文件,找到则执行,如果没有找到,则电脑按照path命令所指定的目录顺序去查找,先在C盘dos目录下,然后在windows目录下,最后在C盘根目录下寻找这个文件。

但是,每次输入path路径仍是件很麻烦的事情,记得我们第一课讲过的DOS启动顺序中要自动执行的一个命令文件吗?对了,就是autoexec.bat,我们把path命令写在该文件里,这样启动计算机后,你就可以执行Path命令指定目录中的任何可执行文件了。

——edit

edit命令是一个简单的编辑软件,我们经常用它来编辑一些程序和批处理文件。 比如,我想在c盘根目录下编辑一个简单的批处理文件,要求无论当前盘和当前目录如何,每次只需输入一个字符w,然后回车即可运行c盘windows目录下的windows程序。这也就是说我们要编辑一个文件名为w.bat的批处理文件。 我们可以在提示符下敲入 edit w.bat回车(就是编辑 w.bat文件的意思)

进入编辑状态后,输入以下内容:c: cd\\windows win

15

输入完后,按Alt+F键激活File菜单, 按向下的箭头选择退出(Exit),

然后电脑提示是否要保存刚才输入的内容,如果要保存,只需输入Y或者直接回车即可。

16

这时已经编辑完w.bat文件,又回到了提示符状态,用前面讲过的type命令就可以查看刚才编辑的w.bat文件,只需输入type w.bat回车即可。

学到这,祝贺你DOS小有成就,已经有了我五成水平了(呵呵,别高兴太早,想超过我,多下点功夫吧),现在你基本上可以自己操作计算机了。

DOS 命令集锦

——最常用命令

上课里我们已经学习了不少DOS命令,但那只是很小的一部分,在这课将简要介绍其它一些命令。

首先,在这一节先回忆一下上课的内容,不要学过就忘啊,多使用几次就能记住的。好,开始吧,看你学得怎么样。

cd 改变当前目录 sys 制作DOS系统盘 copy 拷贝文件 del 删除文件 deltree 删除目录树 dir 列文件名 diskcopy 制磁盘 edit 文本编辑 format 格式化磁盘 md 建立子目录

17

mem 查看内存状况 type 显示文件内容 rd 删除目录 ren 改变文件名

记得多少啊,忘了就去上课看看,下面四个命令是新的,给出命令格式,你自己试试看,学电脑重要的就是摸索。 cls 清屏

[适用场合] 屏幕上太乱了,或是屏幕上出现乱码了, 清除屏幕上显示内容但不 影响电脑内部任何信息 [用 法] move [适用场合] [用 法] [例 子] more [适用场合] [用 法] [例 子] xcopy [适用场合] [用 法] cls 回车

移动文件,改目录名 移动文件到别的目录

move [文件名] [目录] 移动文件至新目录下 move [目录名] [目录名] 改目录名 c:\\>move c:\\autoexec.bat c:\\old 移动autoexec.bat文件至old目录下 c:\\>move c:\\config.sys c:\\temp 移动config.sys文件至old目录下 分屏显示

当输出很多一屏显示不下时采用,几乎适合所有命令,尤其是type 等命令时很有用。 使用more时磁盘不能有写保护,也不适合光驱。 type [文件名] | more 分屏显示文件内容 more < [文件名] 分屏显示文件内容 C:\\>type msdos.w40 | more 拷贝目录和文件

在进行连同子目录一起拷贝时很有用,在拷贝大量文件时比COPY命令 要快得多

xcopy [文件名] [目录] 将指定文件拷贝到指定目录 xcopy [源目录] [目的目录] 将源目录连子目录考到目的目录下 xcopy *.* [目录] /s 将文件与非空子目录拷贝到指定目录 其它常用参数还有: v 拷贝后校验,会影响速度

e 与s 相似,但即使子目录是空的也会拷贝。

18

——help

我们已经学习了不少DOS命令,是不是感到记忆起来很困难,其实高手都不记命令的用法,而只是知道某个命令可以解决某个问题,或在哪个场合下该用哪个命令,用时就现查该命令的用法(当然这要求你首先得有一定英文基础,而且知道哪个命令是干啥的,如果都不行没办法,就只好记了,或者学windows吧)

那该怎样查一个命令的用法呢?这就要用到help命令,它可提供所有命令的帮助。 help 帮助

[适用场合] 当您想具体了解DOS命令的使用方法时使用

[用 法] help 提供所有DOS命令帮助 help [DOS命令] 提供有关命令的帮助 如果你只大致记得某个命令,可以在提示符后直接输入help命令,然后将出现下面的画面:

将光标移至需查询的命令,回车后可查询到其语法格式,比如 cd 命令吧:

19

将光标移至,回车后可查询到其详细语法及功能的解释;将光标移至

,回车后可查询到其语法的详细举例,我们常用举例功能,下面是点后出现的画面

20

如你记得是什么命令就好办了,可以按Alt+S键选择\查找),则会弹出下面的对话框

输入需查找的DOS命令,回车后可立即查询到有关命令的详细信息。

——attrib|data|lable

attrib 设置文件属性

[适用场合] 想对文件做较特殊的处理时 [用 法] attrib 显示所有文件的属性

attrib +r或-r [文件名] 设置文件属性是否为只读 attrib +h或-h [文件名] 设置文件属性是否隐含 attrib +s或-s [文件名] 设置文件属性是否为系统文件 attrib +a或-a [文件名] 设置文件属性是否为归档文件 attrib /s 设置包括子目录的文件在内的文件属性 [例 子] C:\\TEST>attrib +r wina20.386 C:\\>attrib +h *.* /s date 显示及修改日期

[适用场合] 想知道或修改时间和日期 [用 法] date 显示和改变当前日期

隐含所有文件

21

[例 子] C:\\>date 09-20-1996 将日期改为1996年9月20日 C:\\>date

Current date is Tue 08-20-1996 Enter new date (mm-dd-yy):09-20-1996

按月-日-年的顺序修改当前日期 直接按回车键忽略修改日期 lable 设置卷标号

[适用场合] 用来为磁盘做个标记 [用 法] label 显示磁盘卷标

label [盘符] [卷标名] 设定指定盘的卷标 [例 子] C:\\>label

Volume in drive C is WANG

Volume Serial Number is 2116-1DD0 volume label (11 characters,Enter for none)? 可以输入卷标,直接回车后 Delete current volume label (Y/N)? 按y删除旧卷标,按n不更改

DOS 命令集锦

22

——doskey|fdisk

doskey 调用和建立DOS宏命令

[适用场合] 经常需要输入重复的命令时,有非常大的用处 [用 法] doskey

将doskey驻留内存,开辟出缓冲区,以后输入的命令都将保存在缓冲 区中,可以随时调用

doskey [宏命令名]=[命令名]

将宏命令定义为命令,以后输入宏命令,电脑就会执行相应的命令 doskey /reinstall 重新安装doskey doskey /bufsize= 设置缓冲区的大小 doskey /macros 显示所有doskey宏 doskey /history 显示内存中所有命令

doskey /insert|overstrike 设置新键入的字符是否覆盖旧的字符 [例 子] C:\\>DOSKEY C:\\>dir

C:\\>copy C:\\temp\\*.* a: C:\\>del c:\\temp\\*.* C:\\>copy b:\\*.* c:\\temp

上述四条命令都已被保存,用光标控制键的上下可以依次选择使用或 修改, 也可以用F7键列出保存的所有命令

C:\\>doskey di=dir/w/p fdisk 硬盘分区

[建 议] 只有硬盘被很利害的病毒感染时,或是一块新硬盘才需要分区,最好 请懂行的人指导。硬盘都需经过低级格式化,分区,格式化三个步骤 才可使用,成品电脑内的硬盘都已经做过这些加工了。 [用 法] 输入fdisk后按回车即可进入提示界面

定义di为宏命令,意思是执行dir/w/p

——emm386|lh|memmaker

emm386 扩展内存管理

[建 议] 这条命令比较复杂,在第五章中系统配置里将详细介绍 lh/loadhigh 将程序装入高端内存

23

[适用场合] 这条命令一般用在autoexec.bat中,当有些软件需要的基本内存很大 时,它会有用 [用 法] lh [程序]

将程序装入高端内存 使用此命令时,config.sys文件中需有下面两 条语句。 device=emm386.exe dos=umb lh [程序] /l:区号 将程序装入指定的umb区 lh /s 一般是由memmaker专用 [例 子] C:\\MOUSE\\>lh mouse 将鼠标驱动程序装入高端内存 memmaker 内存优化管理

[适用场合] 这个命令现在已经很少用了,在当年DOS流行时,想玩游戏可少不了 它,它可以腾出许多基本内存供游戏使用,只需安装一次即可 [用 法] 1. C:\\>memmaker 2. 回车继续,F3退出

3. 选择手动安装和自动安装,直接回车表示自动安装(回车得了) 4. 选择是否有程序需要扩充内存,可用空格键选择,Yes表示需要, No不需要,按回车键即可。

5. 程序自动检测硬盘内是否安装了WINDOWS

6. 软驱中若有软盘则应将其取出,然后按回车键,电脑将重新起动 两次,不要中断,只需按回车键。

(其实很简单,一直按回车键就行了,呵呵)

DOS 命令集锦

——msd|undelete

msd 系统检测 [适用场合] 用于检查系统信息

[用 法] 1. C:\\>msd 回车后可见到如下画面,在每个选项旁边加了注解,表 示该按钮的功用

24

2. 选择需查询的项目,比如选第一个Computer,将会弹出一个对话框 显示电脑的一些基本信息。你可以试试其他的选项,看看有什么用。

3. 按Alt+F键激活下拉菜单后, 选择\项退出。 undelete 恢复被删除的文件

25

[适用场合] 当不小心删错了文件时,它可以用得上。

DOS删除文件时,只是将文件从分配表中去除,在磁盘存储区内将文 件名的第一个字母删除,文件内容并未马上从磁盘中删除,所以能恢 复。

[用 法] undelete 恢复已删除的文件

undelete /all 恢复文件且不再询问是否恢复, 以\的顺序为第一个 字母来恢复文件

undelete /list 列可恢复的文件名

undelete /s 可将undelete驻留内存,但几乎没人这样使用

——prompt|restore

prompt 设置提示符

[适用场合] 当你厌烦了c:\\>的提示符或者您想使您的提示符与众不同时,您可以 试一试,非常有趣的DOS命令,可以随时显示时间与日期。 [用 法] prompt $p$g 以当前目录名和>号为提示符,这是最常用的提示符 prompt $t 表示时间 prompt $d 表示日期 prompt $$ 表示$ prompt $q 表示= prompt $v 表示当前版本 prompt $l 表示< prompt $b 表示| prompt $h 表示退位符 prompt $e 表示Esc代表的字符 prompt $_ 表示回车换行 [例 子] C:\\DOS>prompt wang$g WANG>prompt $t$d$g

将wang>作为提示符

使用时间、日期和>号做为提示符

0:01:07.77Thu 08-29-1996>prompt $p$g C:\\DOS> restore 恢复已备份的文件

[建 议] 如果以前用backup做过文件备份,则当原文件损坏时可以用它来恢复 文件。

将用backup命令备份的磁盘中的文件恢复到另一磁盘中,备份磁盘中 应有backup.00X和control.00X这两条文件。 [用 法] restore [备份盘符] [目标盘符] 将备份盘上备份文件恢复到指定盘上

restore /s 将备份文件包括子目录都恢复到指定盘上

26

restore /p 让用户判断是否恢复文件 restore /b:日期 恢复日期以前的文件 restore /a:日期 恢复日期之后的文件 restore /l:时间 恢复时间之前的文件 restore /e:时间 恢复时间之后的文件

restore /m 只恢复上次备份后修改过的文件 restore /n 只恢复上次备份后已删 除的文件 restore /d 只显示要恢复的文件名 [例 子] C:\\DOS>restore a: c:

Insert backup diskette 01 in drive A: Press any key to continue . . .

在A驱中放入第一张备份盘,按任意键即可,恢复完第一张后,按顺 序放入其它盘即可。

当您用上述命令不能正确恢复文件时请用: C:\\DOS>restore a: c:\\ /s

——time|set|smartdrv

time 显示及修改时间

[适用场合] 用于显示及修改时间,用法同date [例 子] C:\\DOS>time

Current time is 12:15:26.04a Enter new time: 11:20:20.00p

按时:分顺序输入时间,再加上下午(a/p)即可 直接按ENTER键可忽略 修改时间。 set 设置环境变量

[适用场合] 设置声卡和路径等时用到 [用 法] set [环境变量]=[字符串] 这条命令常常用在autoexec.bat中

[例 子] C:\\>set blaster=a220 i5 d1 设置声卡的参数 C:\\>set path=c:\\dos path c:\\dos含义相同 smartdrv 设置磁盘加速器

[建 议] 它可以提高硬盘访问速度,最好在autoexec.bat文件中加载吧。 [用 法] smartdrv /x

27

执行并驻留内存,开辟磁盘加速缓存区,并屏蔽所有驱动器缓存,是 较常用的方法(一般用这个命令就够了)

smartdrv /c 将缓存内的信息都写入硬盘 smartdrv /e: 数字 设置一次移动的信息量 smartdrv /b: 数字 设置预先读取的缓冲区大小

——append|debug|diskcomp

append [适用场合] [用 法] [例 子] debug [建 议] [用 法] diskcomp [适用场合] [用 法] [例 子] 设置非执行文件的路径

当您无法在多个目录中寻找到自己输入的文稿时,可以试一试这个命 令,用法类似path。 append [路径];[路径] C:\\>append c:\\test

设置寻找非可执行文件路径为c:\\test如果该目录下有文件1.txt时, 在其它目录下调用1.txt找不到时,可自动寻找到c:\\test目录。 D:\\UCDOS>edit 1.txt 可找到C:\\test\\1.txt文件 程序调试命令

如果你学过汇编语言,那你应该会使用debug,如果没学过,最好别 使用

debug [文件名] 比较磁盘

比较两张盘是否相同,没想到什么时候会用到,在比较用diskcopy拷 贝的两张盘,为什么不用diskcopy/v校验呢? diskcomp [盘符1] [盘符2] 比较盘1和盘2 diskcomp /1 只比较磁盘的第一面 diskcomp /8 只比较没磁道的前8个扇区 C:\\>diskcomp a: a: 在同一软驱中比较两张盘 Insert FIRST diskette in drive A: 放入第一张盘

Press any key to continue . . .

Comparing 80 tracks 18 sectors per track, 2 side(s) Insert SECOND diskette in drive A: 放入第二张盘

28

Press any key to continue . . . Compare OK 比较未发现不同

Compare another diskette (Y/N) ?n

是否比较其它盘,选y继续比较,选n停止

——expand|fasthelp|fc

expand 解压工具

[适用场合] [用 法] [例 子]

fasthelp [建 议] [用 法] fc [建 议] [用 法] [例 子] 微软公司软件原始安装盘中有许多后缀以\结尾的压缩文件,可以 用它解压,解除您因为少数几个文件丢失造成的麻烦。 expand [源文件名] [目的文件]

C:\\>expand a:vsafe.co_ c:\\dos\\vsafe.com 解压vsafe.co_为vsafe.com文件

Microsoft (R) File Expansion Utility Version 2.10 Copyright (C) Microsoft Corp 1990-1993. All rights reserved.

Expanding a:vsafe.co_ to c:\\dos\\vsafe.com. a:vsafe.co_: 33046 bytes expanded to 62576 bytes, 89% increase. C:\\DOS> 快速显示帮助信息

可以看看所有的命令,对于单个的命令,还不如在命令名后加/?参数方便

fasthelp 列出所有DOS命令的用处 fasthelp [命令名] 显示命令的用处,等价于 [命令名]/? 文件比较

也许对于大多数人是永远不会用到它的

fc [文件名1] [文件名2] 比较两文件的不同 参数还有: a c l Lbn n t w nnnn C:\\TEST>fc a.bat b.bat

Comparing files A.BAT and B.BAT ***** A.BAT

choice /c:dme defrag,mem,end if errorlevel 3 goto defrag if errorlevel 2 goto mem if errotlevel 1 goto end

29

***** B.BAT choice /c:dme defrag,mem,end ***** C:\\TEST>

——interlnk|intersvr|qbasic

interlnk 启动简易网客户机

[适用场合] 如果有两台电脑可以通过它和intersvr联成简易的网络,这是条很有 用的命令,但不常用 [用 法] [例 子] intersvr [适用场合] [用 法]

DOS新增支持网络的功能,

它可以使两台电脑通过并口线或串口线相联组成简易的网络 使用interlnk 必须在config.sys中增添一句: device=c:\\dos\\interlnk

并口线的两头都应是25针公接头,针之间的连接如下图:对应 p2------------------------p15 p3------------------------p13 p4------------------------p12

p5------------------------p10 公接头指接头为带针的 p6------------------------p11 母接头指接头为带孔的 p15-----------------------p2 p13-----------------------p3 p12-----------------------p4 p10-----------------------p5 p11-----------------------p6 p25-----------------------p25 地线 C:\\DOS\\>interlnk Port-LPT1

this Computer Other Computer (Client) (Server) ---------------------------------------- E: equals A: F: equals C:

在客户机中E盘即为服务机的A盘,F盘为服务机的C盘 启动简易网服务器

使用它,电脑就成了服务器了(只限与DOS提供的简易网) intersvr 启动服务机

intersvr /lpt:1 启动服务机,用lpt1口作为数据传输口 intersvr /com:1 启动服务机,用com1口作为数据传输口

30

参数还有 x baud: b v rcopy (参见interlnk) [例 子] C:\\DOS>intersvr qbasic 启动Basic集成环境

[建 议] 也许对于大多数人是永远不会用到它的

[用 法] 如果会qbasic语言,那么可以利用它编写自己的程序。edit.com必须 有它才可用。

qbasic 起动basic语言环境 qbasic/editor 以全屏方式编辑语言 参数还有: b g h mbf nohi run [例 子] C:\\DOS>qbasic

——setver|share|subst

setver 设置版本

[适用场合] 当希望使用其它版本的dos命令时可以用它来欺骗电脑。在高版本 DOS中,某些旧版本程序需要DOS3.3时,可用setver来设置 [用 法] 使用时一般在config.sys中加入 device=setver.exe setver 显示文件的版本 setver [文件名] n.nn 设置指定文件的版本号 [例 子] C:\\DOS>setver

KERNEL.EXE 5.00 DOSOAD.SYS 5.00 EDLIN.EXE 5.00 BACKUP.EXE 5.00 ASSIGN.COM 5.00 EXE2BIN.EXE 5.00 JOIN.EXE 5.00 RECOVER.EXE 5.00 WINWORD.EXE 4.10 C:\\>

若程序AAA.exe必须在MS-DOS3.3下执行,则键入

C:\\DOS>setver aaa.exe 3.30

又如net5.exe仅在MS-DOS5.0下执行,则在config.sys中加入 device=setver.exe后也可在Ms-DOS6.22下运行。

31

share 文件共享

[建 议] 只有在软件声明必须要运行它时才用

[用 法] 可在config.sys中加入 install=share.exe 也可直接运行 参数有 f l subst 路径替换

[建 议] 一个非常有趣的命令,如果经常用光碟软件,可能有用。 [用 法] subst 显示当前的替代路径

subst [盘符] [路径] 将指定的路径替代盘符,该路径将作为驱动器使用 subst /b 解除替代

[例 子] C:\\DOS>subst a: c:\\temp 用c盘temp目录替代a盘 C:\\>subst a: /d

解除替代

——tree|unformat|vsafe

tree 显示命令树结构 [适用场合] 查看所有的子目录

[用 法] tree [盘符] 显示所有的子目录树 tree /f 显示目录时同时显示文件名 tree /a 以ASCII码显示目录树 [例 子] C:\\WINDOWS>tree /a unformat 恢复已被格式化的磁盘

[建 议] 你把有重要信息的软盘格式化了?快用unformat……什么?你用了 format /u,那死定了

[用 法] unformat [盘符] 恢复指定的被格式化的磁盘 unformat /l 显示unformat所找到的文件名 [例 子] C:\\WINDOWS>unformat a: vsafe 病毒防护程序

[建 议] 把它装入内存可以随时检测出许多种病毒,是比较有用的。 [用 法] vsafe 加载vsafe在内存中 vsafe /u 从内存中去除vsafe vsafe/ne 将vsafe装入扩充内存 vsafe/nx 将vsafe装入扩展内存

32

参数还有 Ax Cx n d [例 子] C:\\>vsafe

——ver|vol|ctty

ver 显示DOS版本 [例 子] C:\\>ver

MS-DOS Version 6.22

C:\\>

vol 显示指定的磁盘卷标号 [例 子] C:\\>vol

Volume in drive C is Wang

Volume Serial Number is 2116-1DD0 C:\\> ctty 改变控制设备

[建 议] 用来改变控制的输入输出设备,可以试试这条命令,不过恐怕不会有 什么作用,是DOS中最没用的命令之一 [用 法] ctty [设备名] 设置控制台 [例 子] C:\\>ctty aux

设置aux为输入输出设备。

——慎用命令

介绍了这么多命令,是不是眼花缭乱了?学DOS的关键就是要多练习各种命令,但得给你提个醒,有些命令可得小心点,要不然到时就悔之晚矣。 del *.* 删除当前目录所有文件

[建 议] 在C盘根目录使用del *.*会使电脑找不到鼠标、光驱、不能使用 windows,甚至不能启动。 事实上在任何目录中使用这条命令,都需 要好好考虑。

deltree *.* 删除当前目录下所有目录与文件

[建 议] 在C盘根目录中使用这条命令,那你必须要保证你的头脑是清醒的, 而且你保证这样做是有必要的,但我们认为在任何情况下都不应该这 样使用这条命令。 在任何目录下使用deltree *.*都会产生与 del *.*一样甚至更坏的结果。慎之!慎之! format c:/u 格式化C盘

33

[建 议] 除非你的硬盘被病毒感染得很深,或者有一个真正电脑专家告诉你应 该这样做,否则不要将C盘格式化,它会使你丢失一切信息,还需要 花几个小时来重新安装所有的软件。 fdisk 硬盘分区

[建 议] 硬盘分区时,一定要让一个曾经使用过这条命令的人来帮助你使用, 否则你将失去所有信息,甚至连硬盘都不能使用了。 recover 覆盖磁盘

[建 议] 在DOS 6以后就不再有这条命令了,如果你使用的是老版本的DOS,劝 你在任何时候都不要使用它,它除了将你的硬盘所有的信息破坏掉就 没有其它作用了。

使用批处理文件

——批处理文件的意义

后缀是bat的文件就是批处理文件,是一种文本文件。简单的说,它的作用就是自动的连续执行多条命令,批处理文件的内容就是一条一条的命令。那它有什么用呢? 比如,在启动wps软件时,每次都必须执行 C:\\>cd wps C:\\WPS>spdos C:\\WPS>py C:\\WPS>wbx C:\\WPS>wps

如果每次用WPS之前都这样执行一次,您是不是觉得很麻烦呢?

如果有一个方法,只需编写一个批处理文件,就会自动执行刚才的所有命令,您想不想学呢?

当您看完此节,自己编写的第一个批处理文件顺利执行时,您一定会大吃一惊的。 此外电脑每次启动时都会寻找autoexec.bat这条批处理文件,从而可执行一些每次开机都要执行的命令,如设置路径path、加载鼠标驱动mouse、磁盘加速smartdrv等,可以使您的电脑真正自动化。

——常用命令

echo、@、call、pause、rem 是批处理文件最常用的几个命令,我们就从他们开始学起。

34

echo echo off @

表示显示此命令后的字符

表示在此语句后所有运行的命令都不显示命令行本身

与echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。

call 调用另一条批处理文件(如果直接调用别的批处理文件 ,执行完那条文件后将无法执行当前文件后续命令)

pause 运行此句会暂停,显示Press any key to continue... 等待用户按任意键后继续

rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的

例:用edit编辑a.bat文件,输入下列内容后存盘为c:\\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。 批处理文件的内容为: 文件表示: echo off 不显示命令行 dir c:\\*.* >a.txt 将c盘文件列表写入a.txt call c:\%ucdos\%ucdos.bat 调用ucdos echo 你好 显示\你好\ pause 暂停,等待按键继续 rem 使用wps 注释将使用wps cd ucdos 进入ucdos目录 wps 使用wps

批处理文件中还可以像C语言一样使用参数,这只需用到一个参数表示符%。 %表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。 例如,C:根目录下一批处理文件名为f.bat,内容为 format %1 则如果执行C:\\>f a: 则实际执行的是format a:

又如C:根目录下一批处理文件的名为t.bat,内容为 type %1 type %2 那么运行C:\\>t a.txt b.txt 将顺序地显示a.txt和b.txt文件的内容

35

使用批处理文件

——特殊命令

if goto choice for 是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。

if

表示将判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:

1、if \参数\字符串\ 待执行的命令

参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号) 如if \

2、if exist 文件名 待执行的命令

如果有指定的文件,则条件成立,运行命令,否则运行下一句。如if exist config.sys edit config.sys

3、if errorlevel 数字 待执行的命令

如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。如if errorlevel 2 goto x2 DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码

goto

批处理文件运行到这里将跳到goto 所指定的标号处, 一般与if配合使用。 如: goto end :end

echo this is the end

标号用 :字符串 表示,标号所在行不被执行

choice

使用此命令可以让用户输入一个字符,从而运行不同的命令。使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。它的返回码为1234……

如: choice /c:dme defrag,mem,end 将显示

defrag,mem,end[D,M,E]? 例如,test.bat的内容如下: @echo off

choice /c:dme defrag,mem,end

36

if errorlevel 3 goto defrag 应先判断数值最高的错误码 if errorlevel 2 goto mem if errotlevel 1 goto end :defrag c:\\dos\\defrag goto end :mem mem goto end :end

echo good bye

此文件运行后,将显示 defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。

for

循环命令,只要条件符合,它将多次执行同一命令。 格式FOR [%%f] in (集合) DO [命令]

只要参数f在指定的集合内,则条件成立,执行命令 如果一条批处理文件中有一行: for %%c in (*.bat *.txt) do type %%c

含义是如果是以bat或txt结尾的文件,则显示文件的内容。

——autoexec.bat

DOS在启动会自动运行autoexec.bat这条文件,一般我们在里面装载每次必用的程序,如: path(设置路径)、smartdrv(磁盘加速)、 mouse(鼠标启动)、mscdex(光驱连接)、 doskey(键盘管理)、set(设置环境变量)等。

如果启动盘根目录中没有这个文件,电脑会让用户输入日期和时间。 例如,一个典型的autoexec.bat内容如下:

@echo off 不显示命令行

prompt $p$g 设置提示符前有目录提示 path c:\\dos;c:\\;c:\\windows;c:\%ucdos;c:\\tools 设置路径

37

lh c:\\dos\\doskey.com 加载键盘管理 lh c:\\mouse\\mouse.com 加载鼠标管理 lh c:\\dos\\smartdrv.exe 加载磁盘加速管理 lh c:\\dos\\mscdex /S /D:MSCD000 /M:12 /V 加载CD-ROM驱动 set temp=c:\\temp 设置临时目录

如何进行系统配置

——为什么要做系统配置

电脑在启动时会自动寻找config.sys这个文件,如果没有它,电脑就按默认的方式运行,但这种默认的方式在大部分情况下都不是最适合电脑使用的,所以我们应对电脑进行设置,比如设置对扩展内存的使用,加载光驱驱动程序等。

如果您的电脑出现Windows使用不了、游戏报告内存不够、光驱找不到、无法连接网络等等错误,合理修改config.sys也许能解决一半以上的问题。

config.sys是文本文件,可以用任何编辑器编辑修改。如果你增添、更改或删除config.sys文件中的任一配置命令,则这种改变只在下一次启动DOS时才有效。

——用CONFIG.SYS做系统配置

根据以前的介绍,大家都知道可以在config.sys中可以对系统进行配置,下面我们先学一学基本命令,在第五节将详细介绍一个多种系统配置的例子。

files=[数字]

表示可同时打开的文件数,一般可选择20到50,如果要拷贝或解压缩大批的小文件(在安装台湾的一些游戏时经常会遇到这种情况,文件数可能有几千),可以把 files的值设为上限值255,这样可以提高拷贝或解压缩的速度。但是要注意,如果把files的值设得过大会占用过多的基本内存。如果不加设定,系统缺省为files=8,该缺省值足以满足多数操作环境的需要。

有的系统配置文件里可能会出现FCBS=[数字]这条语句,它也是用于确定DOS可同时打开的文件最大数,它与files=[数字]的区别在于打开文件的方式不同。一些旧的应用程序会要求用FCB方式打开多个文件,这样,在config.sys里就要使用FCBS命令。

38

buffers=[数字] devicedevicehigh

himem.sysemm386.exe

表示设置磁盘缓冲区的数目,通常设置为20-30左右。缺省值一般为15。

磁盘缓冲区是一块内存区,它用于存储从磁盘读入的数据或存储写到磁盘的数据。DOS在读或写一个记录时,先检查包含那个记录的数据块是否已在磁盘缓冲区中,如果不在,就从磁盘上将该数据块读入到磁盘缓冲区中,再将此记录传送给应用程序;如果数据已在磁盘缓冲区中,则不必从磁盘上读入,而是直接把数据传送给应用程序。由于从磁盘上读取数据是相对耗时较多的操作,所以增加磁盘缓冲区可以节省很多读盘的时间。但是要注意,增加磁盘缓冲区是要占用内存的,所以,磁盘缓冲区的数值并不是设得越大越好,最佳的磁盘缓冲区数目要根据用户的机器配1置和通常运行的程序类型来确定。

和加载一些内存驻留程序,用于管理设备。比如内存管理程序和光驱驱动程序等。 如: device=c:\\dos\\himem.sys device=c:\\dos\\emm386.exe ram devicehigh=c:\\cdrom\\cdrom.sys

devicehigh 与device的不同是前者将程序加载入高端内存。

和DOS只能直接使用640K的内存,即基本内存,必须依靠其它内存管理程序来使用更多的内存,这两条命令就是最常用的内存管理程序。

640K到1M之间的内存叫高端内存,是系统保留使用的;1M以上的内存叫扩展内存;在早期还有一种内存,是要在主机内安装一块内存板的,叫扩充内存,现在已经很少使用。 himem.sys负责管理扩展内存。

emm386.exe负责管理高端内存并在扩展内存中模拟扩充内存供某些软件使用。

为了使用更多的内存,配置文件中应有:

device=c:\\dos\\himem.sys device=c:\\dos\\emm386.exe ram 注意:EMM386.exe要求先安装himem.sys,因而必须确保安装himem.sys的配置命令在emm386.exe之前。

39

dos=high,umb 这两个参数也可以分开写成两条语句,即: dos=high dos=umb

应在config.sys中加入这条命令,这样会将DOS的系统文件移入高端内存,空出更多的基本内存给其它软件使用。 注意,如果用户没有安装emm386.exe,umb这个参数是没有实际意义的。

lastdriver lastdriver规定用户可以访问的最大驱动器符数目,也就是DOS所能识别的最后的驱动器符(字母)。如果设定的驱动器符数目小于本机上的实际驱动器数,则此lastdriver命令会被忽略掉。缺省的最大驱动器符数目为本机的实际驱动器数目加一。

rem

它和批处理文件中的rem含义相同,即注释。

一个典型的config.sys文件内容如下: DEVICE=C:\\DOS\\HIMEM.SYS

DEVICE=C:\\DOS\\EMM386.EXE NOEMS buffers=15,0 files=50 dos=UMB lastdrive=Z dos=HIGH

DEVICEHIGH=C:\\DOS\\ATAPI_CD.SYS /D:MSCD000 /I:0 STACKS=9,256

——了解DOS下的内存

DOS操作系统最早设计时,PC机的硬件系统只支持1M字节的寻址空间,所以DOS只能管理最多1M字节的连续内存空间。在这1M内存中,又只有640K被留给应用程序使用,它们被称为常规内存或基本内存,其它384K被称为高端内存,是留给视频显示和BIOS等使用的。在1982年,640K内存对微型计算机来说显得绰绰有余,人们甚至认为,640K的内存可以用来干任何事。现在看起来有些可笑,但在当时,情况确实如此。

现在的情况是,即使你的电脑装有几兆或几十兆内存,但如果你使用DOS操作系统,那么你也只有640K的内存可以直接使用,1M以上的内存要通过一些内存管理工具才能使

40

用。值得庆幸的是,Windows 95已经不存在常规内存的限制了,你所有的内存,不管是8M还是128M,都可以被直接使用。

在DOS下,系统中存在以下四种内存: 常规内存(Conventional Memory); 高端内存(Upper Memory); 扩充内存(Expanded Memory); 扩展内存(Extended Memory)。

常规内存指的是0-640K的内存区。在DOS下,一般的应用程序只能使用系统的常规内存,因而都要受到640KB内存的限制。而且由于DOS本身和config.sys文件中的安装的设备驱动程序和autoexec.bat文件中执行的内存驻留程序都要占用一些常规内存,所以应用程序能使用的常规内存是不到640K的。有很多时候,我们都要想方设法地整理内存,好为一些“胃口”比较大的应用程序留出足够的常规内存,这一点想必是许多DOS时代的电脑爱好者最熟悉不过的了。

高端内存是指位于常规内存之上的384K内存。程序一般不能使用这个内存区域,但是EMM386.exe可以激活高端内存的一部分,并且它允许用户将某些设备驱动程序和用户程序用Devicehigh或LH(即loadhigh)装入高端内存。dos=high,umb也是把DOS的一部分装到高端内存里。这里的umb是高端内存块(Upper Memory Block)的缩写。

扩充内存是一种早期的增加内存的标准,最多可扩充到32M。使用扩充内存必须在计算机中安装专门的扩充内存板,而且还要安装管理扩充内存板的管理程序。由于扩充内存是在扩展内存之前推出的,所以大多数程序都被设计成能使用扩充内存,而不能使用扩展内存。由于扩充内存使用起来比较麻烦,所以在扩展内存出现后不久就被淘汰了。

扩展内存只能用在80286或更高档次的机器上,目前几乎所有使用DOS的机器上超过1M的内存都是扩展内存。扩展内存同样不能被DOS直接使用,DOS5.0以后提供了Himem.sys这个扩展内存管理程序,我们可以通过它来管理扩展内存。emm386.exe可以把扩展内存(XMS)仿真成扩充内存(EMS),以满足一些要求使用扩充内存的程序。 最后再强调一下,不管扩充内存或扩展内存有多大,DOS的应用程序只能在常规内存下运行。有的程序可以通过DOS扩展器(比如DOS4GW.exe等程序)使CPU进入保护模式,从而直接访问扩展内存;但是要注意,进入保护模式以后,计算机就脱离了DOS状态。

——获得更多常规内存

DOS环境下的大部分程序都是在常规内存中运行,如果某个程序由于内存不够而运行失败,最常见的问题就是常规内存不足。下面介绍几种常用的释放常规内存的方法: 一、当系统配置有扩展内存时,可以将DOS的大部分代码和Command.com的暂驻内存部分安装在高内存区(HMA)。 这要求在config.sys中包含有下述命令: device=Himem.sys dos=high

41

虽然Himem.sys本身也要占用少量的常规内存,但可以使用HMA将为我们节省出更多的常规内存。

二、精简config.sys和autoexec.bat文件的内容,不启动那些不必要的内存驻留程序,这些内存驻留程序往往占用很多常规内存。

如果config.sys文件中含有安装smartdrv.exe或ramdrive.sys的device命令,可以取消它们以节省常规内存。特别是smartdrv.exe要使用大量的常规内存。如果一定要使用ramdrive.sys,应保证RAM盘建在扩展内存中,而不是在常规内存中。

如果config.sys文件含有buffers命令,应减少buffers指定的磁盘缓冲区数目,每一个缓冲区会占用532个字节的常规内存。但是过多地减少盘缓冲区的个数会造成一些程序不能正常运行,一般buffers不宜小于15。

如果config.sys文件中包含lastdriver命令,取消该命令或将lastdriver设成J或K,而不要设成Z。因为DOS为每个允许访问的逻辑驱动器在内存中建立一个对应的管理块CDS,每个CDS大约占用80多个字节的常规内存。

config.sys文件中的device和devicehigh命令的次序是很重要的,它将影响内存的有效使用和config.sys启动时的一系列程序的正确运行。在config.sys文件中最好按以下次序安装设备驱动程序: 1 Himem.sys;

2 使用扩展内存的的设备驱动程序;

3 emm386.exe,如果使用emm386仿真扩充内存并提供对高内存块(UMBs)的存取功 能,那么EMM386命令行应包括RAM开关而不用NOEMS。NOEMS禁止emm386.exe仿真

扩充内存,但它为安装设备驱动程序和运行其它程序提供最大的可用高内存块。 4 使用扩充内存的的设备驱动程序; 5 使用高内存块(UMBs)的设备驱动程序。

对于autoexec.bat,我们的建议是:去掉用户不需要的那些内存驻留程序;如果只在Windows中使用鼠标,不要安装任何鼠标设备驱动程序,比如mouse.com,因为Windows有一个内置的鼠标设备驱动程序。

三、尽可能地在高端内存区(UMB)中安装设备驱动程序和运行其它的内存驻留程序。

——进行多种系统配置

由于软件的增多,而不同软件所需的系统配置并不相同,致使我们需要经常改变配置,如果每次都改写config.sys是相当麻烦的,于是DOS设计了菜单式多重任务选择的配置,就方便多了,比如有些游戏无需扩展内存,有些又必须有扩展内存,有些汉字系统还必须设置虚拟盘等,采用多重设置将是一劳永逸的事。 例:两种设置 [menu]

42

menuitem=nomal ,nomal configuration 设置第一种配置 menuitem=myself ,configuration for myself 设置第二种配置 menudefault=nomal,5 设置默认的配置和自动选择的时间 menucolor=15,1 设置菜单的颜色 [nomal] 此处为第一种配置, [ ]中的内容需与menuitem后的字符相同 files=30 buffers=30

device=c:\\dos\\hime.sys device=c:\\dos\\emm386.exe ram lastdrive=z

[myself] 此处为第二种配置 files=35 buffers=20

device=c:\\dos\\hime.sys

device=c:\\dos\\emm386.exe noems

[common] []中为common则表示此处为各种配置都使用到的配置项 dos=high,umb

其中[menu]区中为菜单的设计:

menuitem 表示设置对应的配置区,可以有多个配置区,逗号后是菜单上显示的内容。 menudefault 设置默认的菜单选项,逗号后是自动选择的时间。 menucolor 设置菜单颜色,逗号前为文字色,后为背景色。 这样在电脑起动时,就会有菜单显示以供用户选择了。

对应的,在autoexec.bat中也可以进行多任务选择,比如: @ECHO OFF PROMPT $p$g

set blaster=a220 i5 d1 此处为公用设置区 set temp=c:\\dos\\temp

goto %config% 转至标号%config% 其中%config%的值是由选择某一菜单项时自动确定的 :nomal 此处为对应的第一个设置,:后的字符需与config.sys中的配置区名相同

43

LH /L:0;1,45456 /S C:\\DOS\\SMARTDRV.EXE

PATH C:\\WINDOWS;C:\\DOS;C:\\UCDOS;c:\\tools;c:\\tools\\vpic lh c:\\mouse\\amouse.com goto end

:myself 此处为对应的第二个设置 PATH C:\\DOS;c:\\tools lh c:\\mouse\\amouse.com goto end :end

出错提示与对策 ----A__C

如果你不懂英文,是不是对经常出现的英文提示一筹莫展,当然最好的主意是你现在就开始学习英语,未来是互联网的世纪,而互联网上的大部分资料是英文的,不懂的话,就少了一种交流的手段。不过我想给出一些常见的错误提示给大家还是必要的,不懂的时候就来查一查吧。

[英文提示] [中 文] [原 因]

Abort,Retry, Ignore,fail? 退出,重试,忽略,取消?

不能识别给出的命令、或发生了使命令不能执行的磁盘或设备错误,可能是磁盘损坏或软驱门没关。

[对 策]

按A键 彻底终止,并回到DOS提示符。 按R键 重复执行该命令。

按I键 继续处理,忽略错误,非常冒险,建议不要采用 按F键 不执行有问题的命令,继续下述处理。有时会用到。

[英文提示] [中 文]

Access Denied 拒绝存取

44

[原 因] [对 策] [英文提示] [中 文] [原 因] [对 策]

[英文提示] [中 文] [原 因] [对 策]

[英文提示] [中 文] [原 因] [对 策]

试图打开一个标记为只读、存贮在写保护的磁盘上或锁定在网络上的文件。如果在子目录上使用“Type”命令,或在文件上使用“CD(chdir)”命令,也会产生这个信息。

应该用“Attrib”命令删除文件的只读状态或从磁盘中去掉写保护,然后再试试。

Bad Command or file name 错误的命令或文件名 不能识别输入的命令

应该检查以确保输入命令的正确性 确认在指定目录或用Path命令指定的搜索路径上能找到命令文件。

Boot error 引导错误

在引导时检测不到应该的外设。

应该检查计算机的设置参数,如用户自己不能解决这个问题,请找专门维修人员。

Cannot find system files 不能找到系统文件

试图从没有包含系统文件的驱动器上装入操作系统。

应该用sys命令将系统文件复制到根目录中。除非真的是不能恢复系统文件了,才可用Format/s命令重新格式化磁盘。

45

[英文提示] [中 文] [原 因] [对 策]

[英文提示] [中 文] [原 因] [对 策]

----D__F [英文提示] [中 文] [原 因] [对 策]

[英文提示] [中 文] [原 因]

Cannot load command,system halted 不能加载command,系统中止

应用程序覆盖了内存中的所有或部分Command.com。

应该重新引导计算机,检查被应用程序修改过的数据是否完整,如必要可将Command.com复制到子目录,这样退出应用程序时DOS可在这儿找到Command.com。

Cannot read file allocation table 不能读到文件分配表 文件分配表已坏。

如仍能找到一些数据,那么将它们都备份到一张空盘中,也可利用Chkdsk命令修复文件分配表,如需要,可重新格式化磁盘。如果问题重复发生,那么应该修理驱动器或更换驱动器。

Divide Overflow 分配溢出,除零错误

程序可能编写有错误,未调试好,也可能是与内存中的其它程序冲突。检查内存中的其它程序或不再使用此程序。

Drive Not Ready Error 驱动器未准备好

没有该驱动器或未放磁盘。

46

本文来源:https://www.bwwdw.com/article/i66x.html

Top