返回主页

 

UNDELETE


恢复以前用<DEL>命令删除的文件。

UNDELETE为防止偶然误删除文件提供了三级文件保护—Delete Sentry(删除警戒),Delete Tracker(删除跟踪)和标准方式。关于每级保护的信息,请参阅注解。

有关UNDELETE的Windows版本的信息,请参阅《MS-DOS 6.22用户手册》中“系统管理”一章,或者参阅Windows Undelete Help。



语法 :

UNDELETE [[drive:][path]filename] [/DT|/DS|/DOS]

UNDELETE [/LIST|/ALL|/PURGE[drive]|/STATUS|/LOAD|/UNLOAD
|/S[drive]|/Tdrive[-entries]]



参数 :

[drive:][path]filename
指定要恢复的文件的名字和位置。默认时,UNDELETE恢复当前目录中所有已删除文件。




开关 :

/LIST
列出有可能恢复的删除文件,但是并不恢复任何文件。[drive:][path]filename参数和/DT,/DS,/DOS开关控制此开关生成的清单。

/ALL
恢复删除文件而不提示确认。若Delete Sentry存在,则UNDELETE使用Delete Sentry方法;否则,若Delete Tracker存在,则UNDELETE使用Delete Tracker;否则,UNDELETE从DOS目录中恢复文件,将文件名中丢失的第一个字符设成#符号。若存在重名文件,则此开关按照如下字符次序试每个字符直到文件名不重:
#%&0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ。

/DOS
只恢复在内部列出被MS-DOS删除的那些文件,对每个文件都提示确认。此开关使UNDELETE忽略存在的删除跟踪文件。

/DT
只恢复那些在删除跟踪文件中列出的文件,对每个文件都提示确认。

/DS
只恢复在SENTRY目录中列出的文件,对每个文件都提示确认。

/LOAD
将Undelete内存常驻程序装入内存时使用UNDELETE.INI文件中定义的信息。若UNDELETE.INI文件不存在,则UNDELETE使用默认值。

/UNLOAD

从内存中卸出Undelete程序的内存常驻部分,关闭恢复已删除文件的功能。

/PURGE[drive]

删除SENTRY目录的内容。若为指定驱动器则UNDELETE在当前驱动器上查找目录。

/STATUS
显示对每个驱动器的删除保护类型。

/S[drive]

允许Delete Sentry级的保护并装入UNDELETE程序的内存常驻部份。程序记录的信息用于恢复指定的驱动器上已删除的文件。若不指定驱动器,使用此开关则允许对当前驱动器上使用Delete Sentry级的保护。指定/S开关装载内存常驻程序时使用定义在UNDELETE.INI文件中的信息。

/Tdrive[-entries]
允许Delete Tracker级的保护并装入UNDELETE程序常驻内存部分。程序记录的信息用于恢复已删除文件。drive参数指定希望UNDELETE保存删除文件信息的磁盘驱动器。可选的entries参数必须在1到999之间,指定删除跟踪文件(PCTRACKR.DEL)中的最大项数。项数的默认值取决于跟踪磁盘的类型。列表列出了磁盘大小,默认的登录项数和它对应的文件大小:

磁盘大小
文件大小
360K
25
5K
720K
50
9K
1.2 MB
75
14K
1.44 MB
75
14K
20 MB
101
18K
32 MB
202
36K
32 MB
303
55K



注意:不能在JOIN或SUBST命令重定向的驱动器上使用删除跟踪。若要使用ASSIGN命令,也必须在使用UNDELETE安装删除跟踪之前。


UNDELETE─注解



注意:一旦从磁盘上删除文件,就可能不能恢复。虽然UNDELETE命令能恢复删除的文件,但也是在一定的范围,即在磁盘上没有创建或改变文件时。若偶然误删了要保存的文件,则应立即停止正在做的任何工作,使用UNDELETE命令恢复。

保护级

MS-DOS提供三级保护防止偶然文件删除—Delete Sentry(删除警戒),Delete Tracker(删除跟踪)和标准方式。

Delete Sentry提供的是最高级别的保护.Delete Sentry需要少量的内存和磁盘空间;其次是Delete Tracker,它需要和Delete Sentry同样多的内存,但是更小的磁盘空间;最低一级的保护是标准形式,它既不需要内存也不需要磁盘空间,但仍允许恢复删除文件。

详细信息,请看下面关于每级保护的注解。

 



Delete Sentry(删除警戒)

Delete Sentry提供最高级别的保护以确保能恢复删除的文件。这级保护创建一个名为SENTRY的隐含目录。当删除文件时,UNDELETE将被删除的文件移到SENTRY目录而不改变它在文件分配表(FAT)的位置记录。恢复该文件时,MS-DOS将该文件移回到它的原始位置。

SENTRY目录和其中的文件被限制在硬盘容量的7%左右。若删除的文件容量超过这个限制,则UNDELETE将删掉最旧的文件直到有足够的空间容纳最新的删除文件。

除了磁盘空间外,Delete Sentry还需要13.5K内存用于存放UNDELETE程序的内存常驻部分。



Delete Tracker(删除跟踪)

Delete Tracker提供中级保护。它使用一个名为PCTRACKER.DEL的文件记录删除文件的位置。删除文件时,MS-DOS改变文件分配表(FAT)使删除文件的位置可被其它文件使用。如果其它文件没有占据该删除文件的位置时,就能够恢复该删除文件。如果另一个文件已经占据了该位置,则也许可以部分地恢复该删除文件。

Delete Tracker需要13.5K的内存用于装入UNDELETE程序的内存常驻部分,并且需要少量的磁盘空间存放PCTRACKER.DEL文件。



标准方式

当打开计算机时,标准级保护就自动可用。它是三级删除保护中级别最低的,但它不需要装入内存驻留程序,也不需要内存和磁盘空间。

使用这级保护,只有在MS-DOS没有将另一个文件放置到删除文件的位置时才能恢复删除文件;否则,就可能不能恢复全部或部分文件。



恢复文件的方法

应使用下列开关中的一个:/DOS、/DT或/DS。如果不指定开关,当Delete Sentry 可用时,UNDELETE就使用Delete Sentry;否则,如果Delete Tracker可用,UNDELETE就使用Delete Tracker;如果以上两个都不可用,UNDELETE就试着使用MS-DOS恢复删除文件。


注意:
UNDELETE不能恢复已经被删除的目录,并且如果已经删掉了包含一个删除文件的目录,则不能恢复该删除文件。如果该目录是根目录的一级子目录,可以首先使用UNFORMAT命令恢复该目录,然后再使用UNDELETE恢复删除文件。必须注意,如果没有正确地使用UNFORMAT可能恢丢失数据。通常,UNFORMAT只能恢复根目录的一级子目录。但当使用UNFORMAT恢复一个偶然格式化的磁盘时,UNFORMAT恢复根下的所有文件和子目录名。


UNDELETE.INI文件

在装入时UNDELETE使用UNDELETE.INI文件定义的值。装入时若该文件不存在,则UNDELETE创建一个UNDELETE文件它包含如下的值:

在当前驱动器上是否使用Delete Sentry或Delete Tracker方法。

保存除*.TMP、*.VM?、*.WOA、*.SWP、*.SPL、*.RMG、*.IMG、*.THM、和 *.DOV之外的文件。

不保存档案位已设置的文件。

在7天之后删除文件。

将用于保存删除文件的磁盘空间设到整个硬盘的20%。

UNDELETE.INI文件有5节:[sentry.drives]、[sentry.files]、[mirror.drives]、[configuration]和[defaults]。

[sentry.drives]节指定驱动器保护使用Delete Sentry方式。

[sentry.files]节指定文件保护使用Delete Tracker或是Delete Sentry。在文件名前加一个(-)号表示不保存此文件。在[sentry.files]节中的默认定义值是如下所示:

[sentry.files]
*.* -*.TMP -*.VM? -*.WOA -*.SWP -*.SPL -*.RMG -*.IMG -*.THM -*.DOV

[mirror.drives]节指明驱动器保护使用Delete Tracker方式。

[configration]节定义下列值:

是否保护档案位已设置的文件。若不保护档案位已设置的文件,则此项如下所示:

archive=FALSE

TRUE表明要保护档案位已设置的文件。

保存文件的天数。默认值定义如下:

days=7

用于保存删除文件的磁盘空间百分比。默认值定义如下:

percentage=20

[defaults]指定文件跟踪的方法.下面定义默认的Delete Sentry方法:

[defaults]
d.sentry=TRUE
d.tracker=FALSE


改变文件的保护方法

一次只能使用一种方法。如果要改变方法,可按如下步骤执行:

1 在命令提示下输入下列命令卸出Undelete程序的内存驻留部分:

undelete /u


2 允许新的保护级并且重新装入Undelete程序的内存常驻部分。例如,要允许对当前驱动器的Delete Sentry保护,可输入以下命令:

undelete /s



驱动器保护

Undelete程序保护在UNDELETE.INI文件中指定的所有驱动器,而不管启动程序时指定的驱动器。例如,若UNDELETE.INI文件包含下列项:

[sentry.drives]
C=
D=


下列命令允许对驱动器C和D的Delete Sentry的保护:

undelete /sc

若只想对驱动器C进行保护,可按如下步骤:

1 使用任意一个文本编辑程序,打开UNDELETE.INI文件。

2 从[Sentry.drives]节删掉以下行:

D=

3 保存改变的内容。

4 退出文本编辑程序。

5 在命令行输入如下命令允许Delete Sentry保护:

undelete /sc



网络驱动器和删除保护

为了保护网络驱动器上的文件防止偶然删除,必须允许Delete Sentry保护级并对驱动器的根目录有读、写、创建和删除文件的能力。


UNDELETE─例子



如下命令指定UNDELETE一次在当前目录中恢复所有的删除文件,对每个文件都提示确认。使用删除跟踪的最高可用级别:

undelete

如下命令指定UNDELETE恢复驱动器C根目录中扩展名为.BAT的删除文件,对每个文件都不提示确认:

undelete c:\*.bat /all

如下命令将UNDELETE程序的内存常驻部分装入内存,创建一个名为SENTRY的隐含目录,并指定UNDELETE将在C盘上删除的文件移到SENTRY目录:

undelete /sc

如下命令将UNDELETE程序的内存常驻部分装入内存,并且在驱动器C上创建跟踪400个删除文件的PCTRACKER.DEL文件:

undelete /tc-400


返回主页