DOS 查看环境变量

环境是 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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值