`
ndh630wb
  • 浏览: 13146 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

DOS初级教程

 
阅读更多

DOS初级教程
2011年09月04日
         DOS(Disk Operating System),是一个磁盘操作系统。它在PC电脑的发展过程中占有非常重要的作用,曾几乎一统天下,在世界上有众多的使用者与爱好者。DOS有很多版本也有很多种,其中最常用的是MS-DOS。 
  一、内部命令 
  1、DIR 
     含义:显示指定路径上所有文件或目录的信息 
     格式:DIR [盘符:][路径][文件名] [参数] 
     参数: 
     /W:宽屏显示,一排显示5个文件名,而不会显示修改时间,文件大小等信息; 
     /P:分页显示,当屏幕无法将信息完全显示时,可使用其进行分页显示; 
     /A:显示具有特殊属性的文件; 
     /S:显示当前目录及其子目录下所有的文件。 
     举例:DIR /P 
     将分屏显示当前目录下文件。在当前屏最后有一个“Press any key to continue . . .”提示,表示按任意键继续。 
     
     2、CD 
     含义:进入指定目录 
     格式:CD [路径] 
     举例:CD DOS 
     CD命令只能进入当前盘符中的目录,其中“CD\”为返回到根目录,“CD..”为返回到上一层目录。 
     
     3、MD 
     含义:建立目录 
     格式:MD [盘符][路径] 
     举例:MD TEMP 
     表示在当前盘符下建立一个名为TEMP的目录。 
     
     4、RD 
     含义:删除目录 
     格式:RD [盘符][路径] 
     举例:RD TEMP 
     表示删除当前路径下的TEMP目录,需要注意的是,此命令只能删除空目录。 
     
     5、COPY 
     含义:拷贝文件 
     格式:COPY [源目录或文件] [目的目录或文件] 
     举例1:COPY C:\*.COM D:\",表示将C盘根目录下所有扩展名为COM的文件拷贝到D盘根目录中。 
     举例2:COPY C:\autoexec.bat C:\autoexec.bak 
     表示将autoexec.bat文件复制成为扩展名为BAK的文件。输入DIR命令,可以发现此变化。 
     
     6、DEL 
     含义:删除文件 
     格式:DEL [盘符][路径][文件名] [参数] 
     举例:DEL C:\ *.BAK /P 
     表示删除当前目录下所有扩展名为BAK的文件,参数/P表示可以使用户在删除多个文件时对每个文件都显示删除询问。 
     7、SYS 
     含义:传递系统文件命令。 
     格式:SYS [源盘符][目的盘符] 
     举例:SYS C: A: 
    此命令将为A盘传送系统,传送成功后,A盘将成为系统启动盘。 
    8、VER 
     含义: 
     格式:SYS 
     举例:SYS C: 
  二、外部命令 
  DOS的外部命令就是一些应用程序,这些外部命令都是以文件的形式存在。 
     
     1、Q 
     含义:简单的编辑软件,可以用它来编辑一些程序和批处理文件。 
     格式:Q [盘符][文件名] 
     举例:Q C:\Autoexec.bat 
     输入此命令后将打开编辑器。在编辑状态下输入文件内容后,按Alt+F键激活File菜单,按向下的箭头选择退出(Exit),提示是否要保存刚才输入的内容,如果要保存,只需输入Y或者直接回车即可。 
     
     2、FORMAT 
     含义:格式化命令,可以完成对软盘和硬盘的格式化操作。 
     格式:FORMAT [盘符] [参数] 
     举例:FORMAT A: /S/Q 
     此命令将格式化A盘,其中参数/Q表示进行快速格式化,/S表示完成格式化后将系统引导文件拷贝到该磁盘,这样软件就可以作为DOS系统启动盘了。格式化 过程中,屏幕上会显示已经完成的百分比。格式化完成后,会提示为磁盘起一个名字,最后还会报告磁盘的总空间和可利用空间等。 
     
     3、XCOPY 
     含义:拷贝命令 
     格式:XCOPY [源路径][源目录/文件名] [目的目录/文件名] [参数] 
     举例:XCOPY C:\ABC D:\ /s 
     执行此命令后,将把C:\ABC目录及其目录中的文件全部拷贝到D盘根目录下,XCOPY是COPY的增强命令,可以实现对多个子目录进行拷贝。最常用的参数是/S,它可以对一个目录下的所有子目录进行拷贝。 
     
     4、DELTREE 
     含义:删除目录树 
     格式:DELTREE [盘符][路径] 
     举例:DELTREE ARE 
  表示删除当前路径下的ARE子目录,执行后会提示是否确认删除,按下Y,即可删除。 
  三、环境变量 
  环境是DOS系统的变量存储区——一个高速暂存存储器,它保存于RAM中,是DOS系统保存重要信息以供批处理文件使用的场所。用户可以根据需要修正或改变它的信息。很多DOS参考书都忽略了它,但不管你知不知道,都在自觉或不自觉地使用着它。 
    
    如何造访环境 
    造访环境有两种方法,一种是通过SET命令来查看,另一种是使用DOS系统的DEBUG命令来查看计算机的RAM。SET命令直观、方便,大多数DOS用户都喜欢使用它来设置和查看DOS环境。 
    1.用SET命令 
    SET命令可用于设置、修改和查看环境变量,键入无参数的SET命令可显示当前环境设置。这些设置一般包括COMSPEC和PATH环境变 量,MS-DOS用它们在磁盘上寻找程序。另外还有PROMPT、DIRCMD、COPYCMD等为DOS系统所使用的其它环境变量。这些环境变量大多在 AUTOEXEC.BAT或CONFIG.SYS文件中用SET命令设置而生成。如下例: 
    C:\>SET COMSPEC=C:\COMMAND.COM 
     PROMPT=$p$g 
    PATH=C:\WINDOWS;C:\;C:\DOS;C:\FOXPRO25;C:\UCDOS;C:\GYPC;C:\CCED;C:\HD;C:\SARP 
    TEMP=C:\DOS 
    2.通过DEBUG命令 
    DEBUG是DOS提供的调试程序的有力工具,利用它可以检验磁盘原始信息、查看内存单元、反汇编程序文件或生成新程序等等,然而DEBUG命令有一定的危险性,因此用户在使用过程中须注意。 
    DOS系统每运行一个程序都要生成一个256字节的内存块——程序段前缀PSP(Program Segment Prefix),它包含了一些比较重要的信息,如内存单元、矢量、命令行上键入的文件名、命令行本身(用户运行程序的命令行的拷贝)、各种保留缓冲器存储 地点的信息。只要涉及环境,那些存储地点之一就会保存系统环境地址。 
    在DEBUG命令状态下查看环境,首先查看偏移量2C处的两个字节: 
    -D2CL2 
    1B41:0020  90 09 
    数据90 09是在某系统上得到的计算机环境的段地址值(用户在操作时应以实际显示数为准),把这两对数以相反的顺序,并在后面跟上偏移量0,就能在DEBUG命令上显示系统环境。如下例: 
    -D0990:0 
    0990:0000 43 4F 4D 53 50 45 43 3D-43 3A 5C 43 4F 4D 4D 41 COMSPEC=C:\COMMA 
    0990:0010 4E 44 2E 43 4F 4D 00 50-52 4F 4D 50 54 3D 24 70 ND.COM.PROMPT=$p 
    0090:0020 24 67 00 50 41 54 48 3D-43 3A 5C 57 49 4E 44 4F $g.PATH=C:\WINDO 
    0990:0030 57 53 3B 43 3A 5C 3B 43-3A 5C 44 4F 53 3B 43 3A WS;C:\;C:\DOS;C: 
    0990:0040 5C 46 4F 58 50 52 4F 32-35 3B 43 3A 5C 55 43 44 \FOXPRO25;C:\UCD 
    0990:0050 4F 53 3B 43 3A 5C 47 59-50 43 3B 43 3A 5C 43 43 OS;C:\GYPC;C:\CC 
    0990:0060 45 44 3B 43 3A 5C 48 44-3B 43 3A 5C 53 41 52 50 ED;C:\HD;C:\SARP 
    0990:0070 00 54 45 4D 50 3D 43 3A-5C 44 4F 53 00 00 01 00 .TEMP=C:\DOS... 
    从上面所显示的环境可以看到,环境中的每项都被“空”字节00隔开,并且环境中的最后一项后面是两个空字符。 
    上面两种方法所显示的环境,其结果是一致的。 
    环境变量“众生相” 
    1.COMSPEC变量 
    这个变量规定了COMMAND.COM文件的位置。通常,如果计算机由硬盘驱动器引导 COMSPEC变量表示为: 
    COMSPEC=C:\COMMAND.COM 
    如果是从软盘驱动器引导的,则COMSPEC变量表示为: 
    COMSPEC=A:\COMMAND.COM 
    使用SET命令能改变COMSPEC的位置,格式为: 
    SET COMSPEC=C:\DOS\COMMAND.COM 
    此命令在系统环境中把COMSPEC重新设置成C盘DOS目录中的COMMAND.COM文件,因为COMMAND.COM不需要在用户的根目 录中。用户也可以把COMMAND.COM放进其它子目录中,采用CONFIG.SYS的SHELL命令来完成这项工作。在计算机的启动过程 中,CONFIG.SYS是在COMMAND.COM装入之前运行的,用SHELL命令通知DOS系统COMMAND.COM在另一个目录中,则系统到那 个目录去找它。这有一个明显的优点,它保持了根目录的清洁。 
    另外,为保证系统能正常运行,用户还需在CON FIG SYS文件中加上这样一句: 
    SHELL=C:\DOS\COMMAND.COM /P [/E:1024] 
    此命令指示DOS在C:\DOS子目录中寻找并运行命令解释程序或外壳程序COMMAND.COM。如果把此命令加到CONFIG.SYS文件 中,可提前把COMMAND.COM移到DOS子目录中。P选项指示COMMAND.COM在根目录中寻找AUTOEXEC.BAT文件并且运行它,如果 没有此选项,则根目录下的AUTOEXEC.BAT文件不能运行。 
    当DOS系统没有更多的空间存储环境变量时,将会看到信息: 
    Out of environment space(环境空间溢出) 
    出现这种情况后,可利用SHELL命令加大COMMAND.COM的环境空间,可选项E:1024就是将环境空间扩大到1KB(1024字节)。 
    2.PROMPT变量 
    这个环境变量显示用户所设置的命令提示符。DOS系统提示符一般设置为显示当前驱动器和路径后接一“>”符号,当然也可以设置为其它类型的命令提示符,这个变量一般在AUTOEXEC BAT文件中设置,命令使用的一般格式为: 
    PROMPT $p$g 
    当然,你也可以使用SET PROMPT=$p$g。 
    3.PATH变量 
    这个环境变量包括用PATH命令设置路径,使DOS系统能在指定的目录中搜索可执行的文件。 
    4.DIRCMD变量 
    这个环境变量让用户确定DIR命令缺省使用的开关和参数集。用户可在AUTOEXEC.BAT文件中或命令提示符下使用SET命令定义DIRCMD环境变量,预先设置DIR的参数和选项的合法组合(可包括路径和文件名)。 
    例如,要把DIRCMD环境变量设置为满屏时暂停(/P)为缺省格式,在AUTOEXEC.BAT批处理文件或DOS命令提示符下键入: 
    SET DIRCMD=/P 
    这时使用DIR命令,在满一屏时将暂停并提示“按任意键继续”。 
    若不想使用这个缺省格式,可在命令行上使用: 
    DIR/-P 
    如要清除此缺省设置,在命令提示符下键入: 
    SET DIRCMD= 
    5.COPYCMD变量 
    用户可以通过设置COPYCMD环境变量,指定COPY、MOVE、XCOPY命令是否先给出提示,经确认后再覆盖文件。 
    若强制要求COPY、MOVE、XCOPY命令在所有情况下均先给出提示: 
    Overwrite Filename(YES/NO/ALL)? 
    就把COPYCMD环境变量设置成/-Y(SET COPYCMD=/-Y),用户可以根据需要来选择是否覆盖。也可以强制要求COPY、MOVE、XCOPY命令在所有情况下都不提示就进行覆盖 , 则把COPYCMD环境变量设置成/Y(SET COPYCMD=/Y)。这里所设置的COPYCMD环境变量,优先于COPYCMD环境变量的所有缺省值和当前值。 
    6.TEMP变量 
    TEMP是一个常用的环境变量,它告诉程序在何处建立临时文件,而有一些程序需要使用环境变量来识别它们要使用的目录。如下例: 
    SET TEMP=C:\DOS 
    在此例中,环境变量TEMP被DOS环境和一些其它程序使用,以确定当前文件子目录的位置。上面的目录C:\DOS被放入环境中,现在DOS系统知道把它们当前的文件放在哪里。在AUTOEXEC.BAT文件中,用户能够也应该设置环境的整个转换。 
    环境变量与批处理文件的亲密关系 
    使用环境变量可以控制某些批处理文件和使程序可按照用户的意愿进行,可以控制MS-DOS显示与工作的方式。一般在AUTOEXEC BAT或CONFIG SYS文件中用SET命令设定用户环境,以便每次启动计算机时系统都能根据用户需要自动设置环境变量。 
    1.在批处理文件中调用环境变量 
    从批处理文件中调用环境变量值时,必须用百分符(%)将变量值括起来。如设置名为WIN32的变量,使它等于字符串C:\Windows\SYSTEM(C盘中的目录),可键入以下命令: 
    SET WIN32=C:\WINDOWS\SYSTEM 
    在批处理文件中可用%WIN32%代替C:\WINDOWS\SYSTEM。在批处理文件中包括以下命令,显示C:\WINDOWS\SYSTEM环境变量的目录内容: 
    DIR %WIN32% 
    当MS-DOS处理该命令时,会用字符串C:\WINDOWS\SYSTEM代替%WIN32%。 
    2.在批处理文件中保存和恢复原有环境下的路径 
    对每一个批处理文件,用户都可以修改环境变量,而各个批处理文件需要不同的PATH指明路径,以执行批处理下的程序,这就需要用户保存原有环境 下的路径。用户可在批处理文件中使用一个环境变量暂时存储用户原来的路径,以便在需要时可以恢复,而不需要重新用PATH命令来设置: 
    SET OLDPATH=%PATH% 
    例如某计算机的设置如下: 
    SET OLDPATH=C:\WINDOWS;C:\; C:\DOS;C:\FOXPRO25; C:\UCDOS; C:\GYPC; C:\CCED;C:\HD; C:\SARP 
    批处理文件解释程序把%PATH%变量扩展成用户的当前路径,故OLDPATH变量等于此路径。如果此时系统因使用其它批处理文件而打乱了原系统路径,可简单地在批处理文件中使用下列语句恢复路径的原貌,以满足用户对不同环境的需要。如下例: 
    PATH %OLDPATH% 
    计算机显示它的执行情况: 
    PATH C:\WINDOWS;C:\;C:\DOS;C:\FOXPRO25;C:\UCDOS;C:\GYPC;C:\CCED;C:\HD;C:\SARP 
    其实,很多用户都可能在各自的AUTOEXEC.BAT文件中存有“OLDPATH”变量,由于此环境变量总包含原有路径的备份,因此可以很容易地恢复原有路径。 
    小结 
    环境是DOS系统很重要的内容之一,它是DOS系统保存重要信息供批处理文件使用的变量存储区——一个高速暂存存储器。它在此保存重要的信息,且用户能把批处理文件的环境变量放入其中。 
    SET命令对环境而言是相当重要的,它被用来给变量赋值、清除变量,并显示环境内容。 
    除了用户生成环境变量(COMSPEC)给出COMMAND COM的位置外,PATH设置系统的搜索路径;PROMPT设置系统提示 符;COPYCMD环境变量指定COPY、MOVE、XCOPY命令是否对要覆盖的文件进行提示;DIRCMD环境变量可以预置DIR参数和开关项。 
  由于环境表相当小,SHELL命令可用于扩大其容量,这虽然避免了“环境空间溢出(Out of environment space)”这个错误,但同时也多占了系统的RAM。 
  四、批处理文件 
  DOS下的可执行文件有三种,分别是EXE,COM和BAT。其中,EXE和COM文件都是二进制形式的,只有BAT文件是文本形式的,可以直接阅读。因 此,BAT文件和以上二进制可执行文件相比,内容要简单的多。这些文件内包含着DOS命令的集合,通常叫作批处理文件。批处理文件的组成虽然比较简单,但 其用处非常大,使用也比较广泛。比如每次都执行一些相同的命令,您一定会觉得非常麻烦,而放在批处理文件中执行的话则轻松得多。AUTOEXEC.BAT 就是一个特殊的批处理文件,它在DOS的启动时自动运行,在系统的配置中发挥着非常大的作用。因此,要学好DOS,就要学好批处理文件。下面介绍批处理文 件的命令及其使用。 
  DOS自带的批处理命令: 
  @:将这个符号放在批文件中其它命令的前面,运行时将不显示命令本身。 
  如@ECHO OFF命令就在批文件首经常用到。 
  CALL:从一个批文件中调用另一个批文件,调用完后继续执行原来的批文件。 
  用法:CALL [批文件名] 
  注:也可以使用COMMAND /C命令完成同样的操作。 
  CHOICE:选择命令。这是一个DOS外部命令,但它主要用在批文件中。 
  CHOICE命令执行后将提示可选择的项目,这时通过一个按键来选则。 
  用法:CHOICE:[/C[:]按键表] [/N] [/S] [/T[:]选择值,秒数] [显示文本] 
  其中,/C表示可选则的按键,/N表示不要显示提示信息,/S表示大小写字符敏感方式,/T表示若在批定的时间内没有选则的话,自动执行/C中定义的某个选择值。显示文本是CHOICE命令执行时的提示信息。选择结果将用ERRORLEVEL值来表示。 
  ECHO:显示指定的信息。通常显示在屏幕上。 
  如ECHO Hello将在屏幕上显示Hello的字样。 
  另外,ECHO ON|OFF用来设置在批文件执行时是否显示命令本身。而ECHO OFF与@的意思一样,但它是一个单独的命令,而不能像@那样放在其它命令之前。 
  FOR:对于指定的文件运行相应的命令。 
  大家知道,DOS下许多命令支持通配符,如?和*,可以一次指定一批文件,非常方便。然而,并非所有的DOS命令都支持通配符,如TYPE(文件内容显示命令)就不支持。有了FOR命令就没有关系了,利于它可以使TYPE命令可以一次显示多个文件。 
  用法:FOR %变量名 IN (文件集) DO 命令 [命令参数] 
  注:以上是FOR命令的固定形式,IN和DO的位置必须正确,否则将提示语法错误。 
  如FOR %F IN (*.*) DO TYPE %F命令就可以实现TYPE命令一次显示多个文件。 
  注:%F是变量名,也可用%G等代替,但前后必须一致。在批文件中用%%F代替。 
  GOTO:转到批文件内部的某个标号下执行。 
  大家知道,在编程中往往需要重复或跳转到某个地方继续执行,如BASIC语言中的GOTO命令。批文件中的GOTO命令也可以完成类似的功能。 
  用法:GOTO [标号名] 
  其中,标号名是可以随意设置的,如Hello等。设置标号用“:”符号,如“:Hello”,这时用GOTO Hello命令将转到“:Hello”所在的位置继续执行批文件。 
  IF:条件判断命令。这是一项很有用的批处理命令。 
  用法1:IF [NOT] EXIST 文件名 命令 [命令参数] 
  意义:如果[不]存在某个文件将执行某个命令。 
  用法2:IF [NOT] ERRORLEVEL 错误返回代号 命令 [命令参数] 
  意义:如果错误返回代号[不]大于或等于指定的代号将执行某个命令。 
  其中,ERRORLEVEL表示错误返回代号,很有用。对于很多DOS命令,由于执行的结果不同(如执行成功,执行失败,或被用户中断等),这些命 令会返回不同的代号,以表示不同的结果。IF ERRORLEVEL命令就根据这个不同结果而产生的不同代号来执行不同的命令,通常用在某条命令之后。如IF ERRORLEVEL 1 ECHO OK!表示如果当前的错误返回代号大于或等于1时将在屏幕上显示“OK!”的字样。 
  用法3:IF [NOT] 字符串1==字符串2 命令 [命令参数] 
  意义:当字符串1和字符串2[不]相等的时候执行某个命令。 
  PAUSE:暂停批文件的执行,并显示“按任意键继续”的字样。 
  REM:添加注解。用于增加文件可读性,将不被执行。也可以用::来代替。 
  SHIFT:在批文件中改变可替换参数的位置。 
  可替换参数是一种特殊的参数,只能用在批文件中。这些参数是由使用者在执行批处理命令时输入的。比如,我们执行DIR /S /W命令,其中DIR是命令名,/S和/W是它的执行参数。在批文件中,这些命令参数将被分别赋予到可替换参数中,如/S就成的%1,/W就可了%2,以 至类推,而命令本身则被赋予%0中。批文件就是利用可替换参数对执行时输入的参数来进行操作的。比如现在有个批处理文件叫MYFILE.BAT,在命令行 下执行MYFILE.BAT YES,于是%0的值就是MYFILE.BAT,%1的值就是“YES”,可以在此批文件中用IF等命令判断出%1等参数的值,然后根据这些值的不同执行 不同的操作,如IF "%1"=="YES" GOTO YES。 
  SHIFT命令不带任何参数,执行结果是将%0的值换成原%1的值,而原%1的值变成的原%2的值,以此类推。注意它的不可逆转性。因为批处理文件 执行时的运行参数可能很多,可能会超过10个,而可替换参数只能从%0到%9,若想取得%9以后的参数值,只能使用SHIFT命令。这时,整个参数列将向 前推。 
  以上是DOS的自带批处理命令,可以看出,这些命令是非常少的,若要编写较复杂的程序,用以上的命令显然不可能实现。这时就需要其它实用的批处理工具了, 著名且实用的有TESTIF,STRING,ASET,BATCHMAN,WBAT等,均可在“DOS软件分类下载”中的“脚本工具”中下载。在批处理文 件中使用以上的工具可以实现非常强大的功能,甚至可以完成许多高级语言程序的功能。所以,如果您想编者按写批处理文件的话,它们是您不错的选择,不仅有详 细的文档,而且还在不断发展中。 
  下面就要谈批处理文件的制作了。其实制作批处理文件并不难,只要掌握了方法就行了。随着您操作次数的增多,您会觉得越来越容易的。 
  首先使用一个文本编辑器,如DOS自带的EDIT命令或其它的编辑工具,如PEDIT等新建一个空白文件(当然,用COPY CON命令直接创建也行),然后在其中根据您想完成的功能输入批处理命令。如果您只是想执行一些的DOS命令的集合,则按顺序在每行输入一个DOS命令就 行了。但如果您是想完成一些更复杂的操作,就需要以上的批处理命令或上述的批处理工具了。 
  以下是我原来所编的一个从1%慢慢增加到100%的批处理小程序,大家可以用作参考,以编写自己的程序。 
  @echo off 
  break off 
  cls 
  set c=0 
  writext 10 1 Wait... 
  be delay 4 
  :loop 
  writext 10 9 %c%%% completed. 
  count c 
  if not %c%==101 goto loop 
  echo. 
  set c= 
  kpush /f 
  break on 
  其中,我用到了WRITEXT,COUNT,BE和KPUSH,这些都是批处理工具。WRITEXT是ECHO的增强工具,可以自定义显示的效果。 COUNT是变量的计算工具,如原来C的值为1,执行COUNT C后C的值就为2。BE是个强大的批处理增强工具,在Norton Utilties 8.0中带有。KPUSH是键盘缓冲工具。 
  总之,利用批处理命令和批处理增强工具,我们可以编出许多强大的批处理文件来,大家不妨一试。许多批处理工具可以在“脚本工具”中下载。 
  五、CONFIG.SYS 
  CONFIG.SYS文件的命令与配置 
  CONFIG.SYS是DOS系统中的一个重要文件,它的配置直接影响到系统的使用及其效率。如果配置不当的话,可能很多程序都无法正常运行。因此,正确 合理地配置CONFIG.SYS文件是十分必要和重要的。下面我向大家介绍一下CONFIG.SYS中的命令及其配置方法。 
  CONFIG.SYS中的命令: 
  注意:所有以HIGH结尾的命令(如DEVICEHIGH)表示将其调入UMB(上位内存),但有些这样的命令(如FILESHIGH)必须在MS-DOS 7.x版本中使用。 
  ACCDATE:指定对每一个驱动器是否记录文件最后被访问的日期。 
  用法:ACCDATE= 驱动器 1+|- [ 驱动器 2+|-]... 
  如:ACCDATE=C+ D+ E+将在C,D,E盘中记录文件最后被访问的日期。 
  此命令仅用于MS-DOS 7.x中。 
  BREAK:设置或清除扩展的CTRL+C检查。 
  用法:BREAK=ON|OFF 
  BUFFERS/BUFFERSHIGH:为指定数量的磁盘缓冲区分配内存。 
  用法:BUFFERS=磁盘缓冲区数量,[从属高速缓存中的缓冲区数量] 
  DEVICE/DEVICEHIGH:将指定的设备驱动程序装入内存。 
  用法:DEVICE/DEVICEHIGH 文件名 [参数] 
  其中,文件名是文件的完整路径,如C:\DOS\HIMEM.SYS。 
  DOS:用于DOS系统的配置,如是否使用HMA(高端内存区)等。 
  用法:DOS=[HIGH|LOW][,UMB|,NOUMB][,AUTO|,NOAUTO][,SINGLE] 
  其中,HIGH和LOW表示使用HMA或不使用HMA,UMB和NOUMB表示使用UMB或不使用UMB,AUTO或NOAUTO表示系统自动配置 或不自动配置,SINGLE表示使用单一模式的DOS。其中,AUTO/NOAUTO和SINGLE仅用于MS-DOS 7.x中。 
  DRIVPARM:设置现有物理设备的参数。 
  注:此命令用得很少,我也没用过,所以暂时跳过。 
  FCBS/FCBSHIGH:指定可以同时打开的文件控制块 (FCB) 的数量。 
  用法:FCBS/FCBSHIGH=可以同时打开的FCB的数量。 
  注:由于FCB主要是在DOS 1.x中使用,对于高版本,所以可以让系统自动配置。 
  FILES/FILESHIGH:指定 可以同时访问的文件数量。 
  用法:FILES/FILESHIGH=可以同时访问的文件数量。 
  注:一般FILES/FILESHIGH的设置值在30左右比较合适。 
  INSTALL/INSTALLHIGH:用于加载TSR(内存驻留程序)。 
  用法:INSTALL/INSTALLHIGH=文件名 [参数] 
  如:INSTALLHIGH=C:\DOS\DOSKEY.COM /APPEDIT 
  LASTDRIVE/LASTDRIVEHIGH:指定可以访问的驱动器的最后有效的驱动器字母。 
  用法:LASTDRIVE=驱动器字母 
  如LASTDRIVE=F会将F设置成最后有效的驱动器字母。 
  NUMLOCK:指定启动时NUMLOCK指定灯是否打开。 
  用法:NUMLOCK=ON|OFF 
  REM:添加注解。 
  用法:REM [注解字符串] 
  注:注解中的字符串只是用来增加可读性,将不被执行。 
  SET:设计DOS环境变量。 
  用法:SET 变量=[变量值] 
  SHELL:指定DOS 使用的命令解释程序的名称和位置。 
  用法:SHELL=文件名 [参数] 
  注:文件名默认是COMMAND.COM,您也可以指定其它的文件,如4DOS.EXE等。 
  STACK/STACKHIGH:指定使用的堆栈数量。 
  用法:STACK/STACKHIGH=堆栈数量,每个堆栈的大小 
  注:通常指定的值是9,256,这个值可以满足大多数的需求。 
  SWITCHES:指定一些特殊选项。 
  用法:SWITCHES=[/W] [/F] [/K] [/N] [/E[:n]] 
  其它的是一些菜单配置命令,如MENUITEM,MENUCOLOR等。 
  六、FAT文件系统 
  在说明FAT文件系统之前,我们必须清楚FAT是什么?FAT(File Allocation Table)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表格,它对于硬盘的使用是非常重要的,假若丢失文件分配表,那么硬盘上的数据 就会因无法定位而不能使用了。不同的操作系统所使用的文件系统不尽相同,在个人计算机上常用的操作系统中,MS-DOS 6.x及以下版本使用FAT16;OS/2使用HPFS;Windows NT则使用NTFS;而MS-DOS 7.10及ROM-DOS 7.10同时提供了FAT16及FAT32供用户选用。其中我们接触最多的是FAT16、FAT32文件系统。 
  一、FAT16文件系统 
  FAT16使用了16位的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。 
  FAT16由于受到先天的限制,因此每超过一定容量的分区之后,它所使用的簇(Cluster)大小就必须扩增,以适应更大的磁盘空间。所谓簇就是磁盘空 间的配置单位,就象图书馆内一格一格的书架一样。每个要存到磁盘的文件都必须配置足够数量的簇,才能存放到磁盘中。FAT16各分区与簇大小的关系如下 表: 
  分区大小       FAT16簇大小 
  16MB-127MB     2KB 
  128MB-255MB    4KB 
  256MB-511MB    8KB 
  512MB-1023MB  16KB 
  1024MB-2047MB 32KB 
  如果你在一个1000MB的分区中存放50KB的文件,由于该分区簇的大小为16KB,因此它要用到4个簇才行。而如果是一个1KB的文件,它也必须使用 一个簇来存放。那么每个簇中剩下的空间可否拿来使用呢?答案是不行的,所以在使用磁盘时,无形中都会或多或少损失一些磁盘空间。 
  由上可知,FAT16文件系统有两个最大的缺点: 
  (1)磁盘分区最大只能到2GB。当前只要你添购计算机的话,想必其中的硬盘大小必定至少有2GB,而3.2GB、4.3GB以上的硬盘比比皆是, 且物美价廉。FAT16文件系统已不能适应当前这种大容量的硬盘,必须被迫分区成几个磁盘空间。而分区磁盘的大小又牵扯出簇的问题来,可谓影响颇大。 
  (2)使用簇的大小不恰当。试想,如果一个只有1KB大小的文件放置在一个1000MB的磁盘分区中,它所占的空间并不是1KB,而是16KB,足 足浪费了15KB!当前流行的HTML文件,其大小几乎多为1KB、2KB,而制作一个网站往往用到数十个HTML文件。如果你的硬盘中有100个这种小 文件的话,你浪费的磁盘空间可从700KB(511MB的分区),到3.1MB(2047MB的分区)。 
  以上这两个问题常常使得用户在“分多大的分区,才能节省空间,同时又可使硬盘的使用更加方便有效”的抉择中徘徊不定。 
  二、FAT32文件系统 
  为了解决FAT16存在的问题,开发出FAT32系统。FAT32使用了32位的空间来表示每个扇区(Sector)配置文件的情形。利用FAT32所能 使用的单个分区,最大可达到2TB(2048GB),而且各种大小的分区所能用到的簇的大小,也是恰如其分,上述两大优点,造就了硬盘使用上更有效率。现 将与分区与簇的大小汇整如下,我们可仔细做个比较: 
  分区大小       FAT16簇大小 FAT32簇大小 
  16MB-32MB      2KB          不支持 
  32MB-127MB     2KB          512bytes 
  128MB-255MB    4KB          512bytes 
  256MB-259MB    8KB          512bytes 
  260MB-511MB    8KB          4KB 
  512MB-1023MB  16KB         4KB 
  1024MB-2047MB 32KB         4KB 
  2048MB-8GB     不支持       4KB 
  8GB-16GB       不支持       8KB 
  16GB-32GB      不支持       16KB 
  32GB以上       不支持       32KB 
  以当前硬件所能支持的情况下,如将8GB硬盘划分为单个分区的话,使用的簇的大小也只有4KB,比起以往的FAT16来说,真是节省了许多空间。 
  三、FAT32使用上的限制 
  看到这些优点,你一定迫不及待地想将FAT16转换为FAT32。不过在转换之前,要注意下面几点: 
  (1)与其他的PC操作系统不兼容。当前支持FAT32的操作系统仅有MS-DOS 7.10、ROM-DOS 7.10、FreeDOS和Windows 2000以上版本,而其他操作系统则根本不能读取FAT32的分区。例如你以MS-DOS 6.x等旧版本的DOS启动盘开机的话,你硬盘中的FAT32分区就会凭空消失,完全看不到这个分区。另外,如果你要使用多重开机来启动多种不同的操作系 统,建议你不要将C:这个分区改为FAT32。因为有一些操作系统会强迫一定要从C:这个主要分区来安装、开机,如果你将C:改为FAT32,而该操作系 统不认FAT32,那就不能开机了。 
  (2)有些磁盘工具、防毒软件还不认得FAT32,可能会造成转换后,磁盘工具软件不能对FAT32的分区进行磁盘处理工作,而防毒软件会不认得这种文件系统,误判为中毒现象。 
  (3)一些版本较旧的软件不能在FAT32的分区中执行,例如Office 95等。 
  (4)小于512MB的分区一般不让转换为FAT32。虽说我们从前面的列表中发现小于512MB的分区只使用512Bytes大小的簇,但是在 Windows 98中,你只能转换512MB以上的分区。如果想转换32MB到512MB这间的分区,必须使用CVT.EXE中的/MIN命令,如CVT D: /CVT32 /MIN,或FDISK /FPRMT。 
  (5)不能在FAT32分区中做磁盘压缩,即使使用Windows 98中的磁盘压缩也是行不通的。 
  (6)如果你主板的BIOS支持"suspend-to-disk"的功能,那么请将这项功能关闭,因为在FAT32分区中是不能使用的。 
  (7)Windows 98所提供的转换工具只能将FAT16转换为FAT32,并不能再从FAT32转换回FAT16。要转换回来只有:重新进行分区(Partition)、格式化(Format),然后重新安装系统、应用软件等。 
  要从FAT32转换回FAT16,还可以借助一项工具:PowerQuest的Partition Magic 3.0或以上版本。这是一套能让你自由改变分区大小、文件系统,而毫不损坏磁盘数据的一套软件。你可以利用这套软件将FAT32转换为FAT16,而不必 重新格式化你心爱的硬盘。如果你没有该软件,那么要有“准备后悔”的念头,请在FAT16转换FAT32前先做好备份。同时我们提醒大家,如果您的计算机 配置不是很高(即不是PⅡ或同一级别的CPU),最好不要将分区表转换成FAT32,因为这样会影响硬盘读取速度的。 
  七、DOS错误信息 
  大家在使用DOS的过程中,经常在命令行方式下遇到一些错误信息提示,由于往往是英文的,导致一些人看到后不知是怎么回事,更不知该如何解决了。下面,我就将常见的DOS命令行方式下的错误信息向大家介绍一下。 
  [英文] Bad command or file name 
  [译文] 错误的命令或文件名 
  错误原因和解决: 
  这大概是大家最常见到的错误提示了,它的意思是输入的命令无效。当输入的命令既不是DOS内部命令,而且系统在查找路径或指定路径中找不到相应的可执行文件的话,就会出现此错误信息。您可以检查输入的命令是否正确,如是否打错了字母等。 
  [英文] Access Denied 
  [译文] 拒绝存取 
  错误原因和解决: 
  这也是一个常见的错误,出现的情况很多,如在用DEL命令删除具有只读属性的文件,或者在多任务环境下有多个进程同时存取同一文件,以及试图在设有 只读权限的网络文件夹中写入文件的时候。解决的方法也很简单,只需去掉文件的只读、隐含等属性,或保证同一时候只有一个进程在读写文件,及去掉网络文件夹 的只读权限即可。 
  [英文] Drive not ready 
  [译文] 驱动器未准备好 
  错误原因和解决: 
  相信大家都遇到过这个错误信息吧!尤其是在存取可移动磁盘(包括软盘和光盘)的时候更是常见到。解决方法是将磁盘插好后重试即可。 
  [英文] Write protect error 
  [译文] 写保护错误 
  错误原因和解决: 
  当试图向写了保护的磁盘(通常是软盘)写入信息的时候就会出现该错误。将磁盘的写保护去掉即可。 
  [英文] General error 
  [译文] 常规错误 
  错误原因和解决: 
  此错误通常出现在DOS无法识别指定的磁盘的格式的情况下,如软盘未格式化。用FORMAT等命令格式化磁盘或转换成DOS能识别的格式即可。 
  [英文] Abort,Retry,Ignore,Fail? 
  [译文] 中止,重试,忽略,失败? 
  错误原因和解决: 
  此错误信息的出现频率非常高,比如在磁盘未准备好的时候。输入A则取消操作,然后返回DOS提示符下,输入R则表示再试一次,输入I则表示忽略此错误并继续,最好不要使用,输入F则表示跳过此错误,经常选择此项。 
  [英文] File not found 
  [译文] 文件未找到 
  错误原因和解决: 
  在使用很多命令的时候若找不到指定的文件就会出现该提示。例如使用DIR命令的时候,若指定的文件不存在,该错误信息就会出现。解决方法是将文件名输入正确。 
  [英文] Incorrect DOS version 
  [译文] 错误的DOS版本 
  错误原因和解决: 
  当要执行的命令发现当前的DOS版本与这个命令所期待的DOS版本不相同的时候就会出现此错误信息。具体情况和解决方法请见本站的“DOS文章”栏目中的文章。 
  [英文] Invalid directory 
  [译文] 非法目录 
  错误原因和解决: 
  如果输入了不存在或无效的目录的时候就会出现该提示。可检查是否输入有误。 
  [英文] Invalid Drive Specification 
  [译文] 指定的驱动器非法 
  错误原因和解决: 
  当输入的驱动器不存在的时候就会出现该提示。请检查是否存在该驱动器。有些驱动器(如NTFS卷,光驱,网络驱动器等)则需要加载相应的驱动程序才能被识别。 
  [英文] Syntax error 
  [译文] 语法错误 
  错误原因和解决: 
  此命令在使用一些批处理命令(如IF,FOR等)时比较常见,可检查是否输入了无效的语法。以FOR命令为例,它的语法是FOR %F IN (文件名) DO 命令,不能将此语法格式弄错了(如输反了或漏了等),必须输入正确的命令才能得到相就的结果。 
  [英文] Required parameter missing 
  [译文] 缺少必要的参数 
  错误原因和解决: 
  如果在执行命令(如DEL)漏掉了它要正常完成功能所需的参数时,就会出现该提示。 
  [英文] Invalid parameter 
  [译文] 非法参数 
  错误原因和解决: 
  出现在执行命令时输入了无效的参数。可以检查输入的参数是否正确,有没有拼写错误等。如果您不知道有哪些参数的话,通常可以使用此命令的/?选项来看参数列表。 
  [英文] Not enough memory 或 Insufficient memory 
  [译文] 内存不足 
  错误原因和解决: 
  如果在执行程序时程序发现所需的内存大于可以使用的内存(通常是指常规内存)时就会出现此信息。造成内存不足的情况如执行了过多过大的内存驻留程序,或系统内存未经过很好的配置等。大家可以看本栏目中的“DOS下内存的配置”。 
  [英文] Divide overflow 或 Divide by zero 
  [译文] 除数为零 
  错误原因和解决: 
  如果在系统不稳定,与其它程序有冲突,或程序本身有问题的情况下运行程序的话就会出现此错误。可以重新启动系统后再运行此程序试试。 
  [英文] Runtime error xxx 
  [译文] 运行时间错误xxx 
  错误原因和解决: 
  和以上的“除数为零”错误类似。如果xxx的值为200的话,可以见“DOS文章”栏目。 
  [英文] Error in EXE file 
  [译文] EXE文件有错误 
  错误原因和解决: 
  通常是这个可执行文件已经损坏,已不能够再使用。使用一个好的就可以了。 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics