“计算机操作技术”讲座(7) 磁盘操作系统—DOS(3)续

🏠 首页 《无线电》杂志 1995年 🔗 第2期 🔗 第37页 分类:答读者问 🔗 杨锡平 🔗

四、文件比较

DOS不仅可以对两张同类型的磁盘进行比较,以判别两张磁盘是否完全一样,而且也可以对两个文件进行比较,以确定两个文件的内容是否完全一样。这里要注意,我们强调的是文件的内容,而不是文件名,事实上两个文件可以有不同的名字,而其内容可能完全一样(用COPY拷贝的文件便是这样)。

文件比较是通过DOS外部命令COMP完成的,它的使用格式如下:

[d:][path]COMP[d:][path][filename[.ext]]

[d:][path][filename[.ext]]

其中COMP前面的[d:][path]表示包含DOS外部命令文件COMP的磁盘和路径,COMP后面的第一个[d:][path][filename[.ext]]表示需要比较的第一个文件及其所在路径,第二个[d:][path][filename[.ext]]表示参加比较的第二个文件及其所在路径。如:

C>C:\DOS\COMP A:\FOX\LI.DBF B:\DBASE\WANG.DBF

它表示COMP命令文件在硬盘C的子目录DOS中,将对A盘子目录FOX下的LI.DBF和B盘子目录DBASE下的WANG.DBF两个文件进行比较。这里有几个条件必须满足:第一是微机上的确配备有硬盘C及软驱A和B,第二是C盘上建立了子目录DOS,而且DOS子目录下有DOS外部命令文件COMP,第三是A盘上有子目录FOX而且它下面有文件LI.DBF,B盘上有子目录DBASE而且它下面有文件WANG.DBF。从上面的命令可以看出,当其中任何一个条件不满足时,比较是没有意义的,因为相应的实体并不存在。

使用COMP时应注意以下事项:

1.由于COMP命令是对文件进行比较,所以两个文件可以在不同的磁盘上(包括硬盘和软盘),也可以在相同的磁盘上;另外由于只比较文件的内容,所以参加比较的两个文件既可以有相同的名字也可以有不同的文件名,如以下命令都是有效的:

C>C:\DOS\COMP A:ABC.DOC B:ABC.DOC

C>C:\DOS\COMP A:X.FOR A:Y.FOR

读者可以详细分析上面的命令完成的具体操作。

2.COMP比较文件的内容是否相同,所以若两个文件的大小不同,则内容也不同,COMP命令将不执行这种比较。

3.若两个文件在某处不相同,则COMP命令将显示如下信息:

Compare error at OFFSET ××××××××

File 1=××

File 2=××

而且比较结束后将显示:

Mismathches—ending compare

表示文件不相同,比较结束。如果比较的两个文件完全相同,则显示:

Files compare OK.

关于COMP命令使用的更详细说明可以参阅有关的专业书籍。

五、数据备份和恢复

这里所讲的数据备份是指将硬盘上的数据备份到软盘上,而恢复则是相反的过程,即将软盘上的备份数据重新恢复到硬盘上。一般来说,对数据的备份可通过COPY命令来完成,而使用COPY命令作数据备份时有以下缺点:

1.如果要备份的数据文件大小大于软盘的容量,则不能用COPY作备份。例如许多精密的汉字字库多达2M字节甚至更大,用COPY命令无法完成文件拷贝,因为目前尚无大于2M的软磁盘和相应的软盘驱动器(至少也没有大规模使用)。

2.如果要对某个子目录下的文件以及该子目录下的其它子目录下的文件进行备份,使用COPY命令会很繁琐,而且也不方便。

3.COPY命令只对文件作完全一样的复制,不具备磁盘空间的压缩功能。

数据备份命令BACKUP则可以克服以上缺点,它的使用格式为:

[d:][path]BACKUP d:[path][filename[.ext]]d:[/s]

其中BACKUP前的[d:][psth]指明包含BACK-UP命令文件所在的驱动器及路径,BACKUP后的d:用于指明源文件或目录所在盘符,[filename[.ext]]用于指定要备份的文件,其前面的[path]用于指定该文件所在的路径,第二个d:用于备份文件存储到哪个驱动器上,[/s]用于指定是否复制子目录下的文件。如:

C>C:\DOS\BACKUP C:\DOS\*.*A:/S

该命令表示将硬盘C上子目录DOS下的所有文件及DOS下其它子目录的所有文件备份到A盘上。当A盘的容量不足时,系统会自动提示插入第二张盘等等,直至备份结束。

BAKCUP可以按以下几种情况复制备份文件:

从硬盘到软盘

从软盘到软盘

从软盘到硬盘

从硬盘到硬盘

包含要复制备份文件的磁盘称为源盘,存放备份文件的磁盘称为目标盘。当目标盘为软盘时,备份文件存放在根目录下,当目标盘为硬盘时,备份文件存放在名为\BACKUP的子目录下。

由于数据备份命令不是作严格的文件拷贝,所以目标盘上的文件与源文件有不同的格式,当由于某种原因要使用备份文件时,必须先对这种备份文件作恢复处理,数据恢复命令具有以下格式:

[d:][path]RESTORE d:[d:][path]filename[.ext][/s]

其中RESTORE前的[d:][path]指定含有RE-STORE命令文件的驱动器和路径,d:表示含有BACKUP源文件的驱动器,[d:][path]filename[.ext]指定文件转储到何处,以及要从源盘中转储的文件。[/s]不仅转储指定目录中的文件还恢复子目录中的所有文件。如

C>C:\DOS\RESTORE a:c:\*.*/s

表示将备份盘A中的所有文件及子目录下的所有文件恢复到C盘上。

C>C:\DOS\RESTORE a:c:*.dat

表示将A备份盘上具有文件扩展名.dat的文件全部转储到硬盘C上。

六、文本打印

如果我们在微机上配备了打印机,就可以将文本文件打印出来。完成打印工作可以有以下方法:

1.使用输出管道功能

使用DOS命令时可以指明执行结果输出到何处,用>表示输出设备,它可以是某个文件,也可以是打印机PRN。如

C>dir*.*>PRN

表示将C盘当前目录下所有文件列出来并从打印机上打印出来(而不是在屏幕上显示)。

C>type config.sys>prn

表示打印文件config.sys的内容。

2.使用PRINT命令

PRINT命令的格式如下:

[d:][path]PRINT[d:][path]filename[.ext]

其中PRINT前的[d:][path]指定PRINT命令文件所在驱动器及路径,后面的[d:][path]filename[.ext]指定要打印的文件及该文件所在盘符及路径。如:

C>C:\DOS\PRINT A:README.DOC

表示打印A盘上的文件README.DOC。

至此,我们已对DOS的内部命令和外部命令作了简要介绍,需要说明的是,限于篇幅,我们不能对每条DOS命令都作介绍,而且所介绍的命令也不能作更深入的讨论,有兴趣的读者可以以此为基础阅读有关专业书籍,以便更深入了解DOS的内容。(杨锡平)