CentOS 8远程服务器下,如何在VS Code中批量恢复误删文件夹?
批量恢复误删文件夹的简便方法
从VS Code本地历史批量恢复
VS Code的本地历史功能会把文件快照存在服务器的特定目录里,不用逐个操作:
- 找到对应项目的本地历史存储路径(Remote SSH模式下,路径在远程CentOS服务器上):
用~/.config/Code/User/workspaceStorage/*/localHistory/ls -lt ~/.config/Code/User/workspaceStorage/按时间排序,找到误删文件夹所在项目对应的哈希目录。 - 进入该目录的
localHistory文件夹,里面是按日期命名的快照目录,找到误删前的那个快照。 - 用
cp命令批量复制整个文件夹的快照到目标位置:cp -r /path/to/localHistory/<快照日期文件夹>/<误删的文件夹名> /path/where/you/want/to/restore/
借助版本控制系统快速恢复
如果误删的文件夹之前已经加入Git(或其他版本控制),这是最快的方式:
- 如果你还没提交删除操作,直接恢复:
git restore path/to/deleted/folder/ - 如果已经提交了删除,先找删除前的提交哈希:
然后回退恢复该文件夹:git log --oneline | grep -i "delete"git checkout <提交哈希> -- path/to/deleted/folder/
系统级工具恢复(紧急备选)
如果上面的方法都没用,且删除后没有往磁盘写入大量数据,可以用CentOS的文件恢复工具:
- 安装
testdisk:sudo dnf install testdisk - 运行附带的
photorec工具(专门恢复文件):sudo photorec - 按照界面提示选择误删文件夹所在的磁盘分区、要恢复的文件类型,指定恢复目录,工具会批量扫描并恢复文件。
内容的提问来源于stack exchange,提问作者Jonas De Schouwer
相关产品推荐
相关产品推荐

