jupyter代码恢复

在notebook文件夹下输入
ls -a
其中有两个文件夹

.ipynb_checkpoints
.ipython

  1. 先检查有没有快照,也就是.ipynb_checkpoints文件夹下有没有-checkpoint.ipynb后缀的文件,如果有copy出来看一下有没有丢失的代码,如果有直接用这个文件就可以了,如果没有继续往下看
  2. cd .ipython/profile_default/ 打开history.sqlite看一下有没有丢失的代码,建议用关键字搜一下(肯定有,都不用看,但是这里面都是二进制形式的,虽然找到了但是看不懂
  3. 执行sqlite3 history.sqlite进入sqlite数据库(如果没有sqlite需要自行安装
  4. select sessions.session, sessions.start, sessions.end, history.source from sessions join history using (session) where start > '2024–01–15' and start < '2024–01–17';自行替换成你丢失代码之前执行的日期,我试过了不能用=2024-01-16
  5. 解析session,这里的session_id一般来说从下往上找第一个数字select '# @@ Cell '|| line || char(10) || source || char(10) from history where session = session_id; 比如我的返回结果为888|2024-01-15 18:18:10.056115||代码那么888就是session_id

我丢的代码并不多,并且执行顺序很乱,所以我没有把结果保存成文件再转成ipynb格式,直接从后往前把代码copy进我的notebook,就到此结束了

如果需要写成notebook,看原文:https://medium.com/flatiron-engineering/recovering-from-a-jupyter-disaster-27401677aeeb

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值