正编写的一份源代码文件约 800 行,未用版本控制系统管理,无备份,编辑器的自动备份功能未打开。不小心用 mv file1 file2
命令覆盖了该文件。()
覆盖后,第一时间使用 sysrq u 将文件系统挂载为只读并关闭计算机,再使用 LiveUSB 启动计算机。回忆文件内容,根据回忆,文件中应该有 make(map[string]int, len(clientConnPool))
字样。
执行以下命令:
grep -z -a -B800 -A800 "make(map[string]int, len(clientConnPool))" /dev/sda3 | tee recup
1TB 5400rpm 的硬盘经过约 2 小时的扫描后,得到一个约两万四千行的文件,所有代码均得到恢复。不过一些空行和结尾大括号没了,需要花时间手工恢复。