撤消一个连接了我所有文件的拙劣的命令提示符副本



在Windows 8命令提示符中,我插入了一个备份驱动器,并导航到我的User目录。我执行了命令:copy Documents G:/Seagate_backup/Documents

我以为copy会在我的备份驱动器上创建Documents目录,然后将C:\Documents目录的内容复制到其中。但事实并非如此!

我擦了擦硬盘,重新安装了操作系统,以为我已经备份了重要的文件,却发现copy似乎将所有不同类型的C:Documents文件(.doc、.pdf、.txt等)连接到了一个名为"Documents"的文件中。这个文件当然不可读,但在记事本中打开它会发现发生了什么。我可以在这个超长的文件中看到一些纯文本的文件。

我该如何撤消它!!?这太可怕了,因为我实际上是在帮助一个朋友,而且对自己很有把握,但现在这种情况发生了。我唯一能想到的就是在连接的文件中搜索一些常见的分隔符,并编写某种脚本将文件重新拆分。但接下来我不得不猜测每一个片段的扩展。。。

以复制使用的方式将文件合并在一起,会丢弃重要的文件系统信息,如文件大小和文件名。虽然文件名可能没有大小那么重要。操作系统使用这两个参数来区分文件。

如果您以前损坏过文件分配表,并且所有文件都消失了,那么这个问题听起来可能很熟悉。在这两种情况下,您最终都会得到一个二进制blob(无论是实际的磁盘还是类似于磁盘映像的文件),它缺少任何大小和文件名信息。

幸运的是,这是许多文件系统恢复工具可以提供帮助的地方。他们擅长搭配图案。具体来说,他们正在寻找关于文件类型、起始位置和大小的线索。例如,这是由许多具有一组幻数的文件类型启用的,这些幻数用于允许程序检查文件是否真的是扩展名所声称的类型

原则上,或多或少可以很好地撤销这个过程。您需要使用数据恢复工具或binwalk等其他分析工具来提取连接的二进制blob。基本上,用于恢复已删除文件的相同工具应该能够再次提取您的文档。当然没有任何文件名。我建议将文件重命名为磁盘映像(.img),然后从操作系统中将其安装为虚拟硬盘(不要担心它没有文件系统,它应该显示为未格式化的驱动器),或者直接使用可以读取二进制文件的数据恢复工具或分析工具(例如,binwalk可以直接做到这一点,但可能找不到所有类型的文件,因为它主要用于打开固件映像,这些映像可能以与文件最终的方式相同或相似的方式组装)。

最新更新