You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下Replit误删运行中Python Flask脚本如何恢复代码

Ubuntu环境运行中误删Flask脚本恢复方案

核心前提

绝对不要终止当前运行的Flask进程、不要重启Replit实例、不要执行系统临时文件清理操作。Linux系统中只要持有文件的进程未退出,被删除文件的inode不会被内核回收,可直接通过进程虚拟文件系统找回完整源码,全程不需要安装额外工具。

操作步骤

  1. 定位Flask主进程PID
    执行以下命令筛选正在运行的Flask相关进程,找到承载目标应用的主进程ID(PID):

    ps aux | grep flask
    

    如果能回忆起被删除脚本的文件名,也可以直接用pgrep快速定位:

    pgrep -f "你记忆中的脚本文件名.py"
    

    记录下找到的主进程PID,后续命令中替换为实际值即可。如果主进程未找到对应文件,再用相同方法排查3个子进程的PID。

  2. 查找被删除脚本对应的文件描述符
    进入对应进程的文件描述符目录,筛选所有已被标记为删除的打开文件:

    cd /proc/[你记录的PID]/fd
    ls -l | grep deleted
    

    输出结果中会出现类似如下条目,对应你被删除的Python脚本:

    lr-x------ 1 runner runner 64 Aug 20 12:00 3 -> /home/runner/yourproject/app.py (deleted)
    

    条目中箭头前的数字3就是该文件对应的文件描述符编号,箭头后是文件原来的存储路径。

  3. 导出恢复源码
    直接将文件描述符对应的内容拷贝到安全位置做备份,优先备份到非项目目录避免覆盖原有运行关联文件:

    cp 3 /home/runner/recovered_app.py
    

    打开导出的文件确认代码完整无误后,再拷贝回原路径即可。

注意事项

  • 恢复出的文件第一时间做多份备份,确认代码完整后再进行服务重启、环境调整等操作
  • 如果主进程的fd目录中未找到目标脚本,逐个对3个子进程重复上述查找、导出操作即可
  • 恢复完成后建议立刻为项目初始化版本控制(如Git),定期提交代码避免后续出现同类误操作

内容的提问来源于stack exchange,提问作者Deathlok Gaming

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 11:21:26