我试图重命名 ( mv
) 几个文件,但运行了一个错误的循环,导致将所有 10 个文件重命名为一个。现在我只能看到一个文件,而应该有十个文件。如何恢复所有文件?
答案1
从备份中恢复文件。
如果您没有备份,文件很重要并且您很幸运,您可以尝试扩展删除 工具。可能使用另一台机器来安装它并将磁盘安装为外部磁盘。
为了保护自己将来免受此类错误的影响:进行备份,在运行之前进行测试,并将以下内容添加到您的 bash 配置文件中:
alias cp='cp -i'
alias mv='mv -i'
这将需要在尝试覆盖时进行确认。
答案2
如果 extundelete 不能满足您的要求,Sleuth Kit 中的一些工具可能会有所帮助。 fls 可以为您提供有关目录中已删除文件的信息。 Testdisk 有时也很有帮助。有时。
另外,这可能是不言而喻的,但在丢失文件后不要写入驱动器!数据仍然存在,但空间被标记为未分配,并且可能会被覆盖。仅将其安装为只读(至少在您恢复文件或制作备份映像之前)。