如何在 Jupyter Notebook 中還原已刪除的檔案:6 種方法

了解如何在 Jupyter Notebook 中還原已刪除的檔案

在想 如何在 Jupyter Notebook 中還原已刪除的檔案 在移除一個儲存格、刪除 .ipynb 檔案或儲存了不必要的變更後該怎麼辦?首先,請確認究竟是什麼消失了。被刪除的儲存格、遺失的筆記本檔案,以及儲存於遠端 JupyterHub 上的筆記本,各自需要不同的解決方案。本指南將依照最安全的順序,逐一說明每種情況。若要更廣泛地 刪除的檔案復原 位於本機的 Windows 磁碟機上,, Magic Data Recovery 當 Jupyter 自身的復原選項和備份無濟於事時,可嘗試掃描以尋找遺失的筆記本。.

先這樣做: 請停止在曾存放筆記本的磁碟機上儲存檔案、安裝套件、清除快取或執行清理工具。新資料可能會覆寫已永久刪除的 .ipynb 檔案。.

支援 Windows 7/8/10/11 和 Windows Server

目錄

你在 Jupyter Notebook 中究竟刪除了什麼?

.ipynb 筆記本是一個 JSON 文件,用來儲存程式碼單元、Markdown 單元、輸出結果以及元資料。然而,即時核心(live kernel)還會保留您已執行的程式碼的輸入歷史紀錄。正是這個區別,解釋了為何您可以在不還原整個筆記本的情況下,從歷史紀錄中恢復程式碼。.

在嘗試排除故障之前,請先進行此快速診斷:

有什麼東西不見了?

最佳的第一種方法

此方法能恢復哪些內容

筆記本仍處於開啟狀態時,顯示一個或多個儲存格

在指令模式下按下 Z 鍵

最近刪除的儲存格

儲存至當前筆記本中的儲存格或編輯內容

還原至檢查點或較早的版本

先前儲存過的筆記本狀態

整個本地的 .ipynb 檔案

檢查回收筒或垃圾桶

如果該檔案已被移至該處,則為完整檔案

已執行程式碼,但筆記本中未保留任何可用的副本

搜尋 IPython 歷史記錄

請輸入程式碼,而非完整的筆記本結構

JupyterHub 中的筆記本、課程實驗室,或其他託管服務

請查看平台紀錄或聯絡管理員

伺服器端的備份、快照或垃圾桶

一台本機 Windows 筆記型電腦從「垃圾桶」和備份中消失了

掃描原始磁碟機

可恢復的已刪除 .ipynb 檔案或其他專案檔案

在 Jupyter Notebook 中還原已刪除的檔案:6 種方法

請依序嘗試以下解決方案。早期的方法不會掃描已刪除的磁碟空間,因此速度較快且對系統的干擾較小。.

方法 1:立即還原已刪除的儲存格

如果您刪除了某個儲存格,但筆記本仍處於開啟狀態,Jupyter 的儲存格操作記錄可提供最快速的解決方法。.

  1. 按下 Esc 鍵以進入指令模式。.
  2. 按一次 Z 鍵。.
  3. 請檢查已刪除的儲存格是否會恢復至原位置。.
  4. 在進行更多修改之前,請先以新名稱儲存該筆記本。.

目前的 JupyterLab 命令參考 將 Z 列為 撤銷儲存格操作. 您也可以開啟「編輯」選單或「命令面板」,然後選擇該指令。若您刪除了多個儲存格,請仔細重複此步驟。.

請勿將 Z 與 Ctrl+Z 或 Cmd+Z 混淆。當您處於指令模式時,此單鍵指令可撤銷筆記本層級的儲存格操作;而標準的快捷鍵通常僅會撤銷目前選取儲存格內的文字編輯。.

在關閉或重新載入筆記本之前使用此選項效果最佳。如果撤銷記錄已消失,請改用檢查點方法。.

方法 2:還原 Jupyter Notebook 檢查點

檢查點包含筆記本的先前儲存狀態。當您刪除儲存格、替換可運作的程式碼,或將有問題的編輯內容儲存至原始檔案時,檢查點便派上用場。.

從 Jupyter 介面還原

在還原之前,請先備份當前的筆記本。接著開啟「檔案」選單,並尋找 將筆記本還原至檢查點 或名稱相似的指令。Jupyter Notebook 與 JupyterLab 各版本的選單文字可能有所不同。.

選取可用的檢查點,並檢視其時間戳記。還原操作會取代筆記本的當前狀態,因此在確認之前,請先複製任何您仍需要的較新儲存格。.

手動還原檢查點檔案

Jupyter 通常會將檢查點副本儲存於筆記本旁的一個隱藏資料夾中:

  1. 專案/
  2. ├── analysis.ipynb
  3. └── .ipynb_checkpoints/
  4. └── analysis-checkpoint.ipynb

如果檢查點仍然存在,請將其複製到另一個資料夾,並重新命名該副本,例如:

  1. analysis-recovered.ipynb

在 Jupyter 中開啟已重新命名的副本,並檢查各儲存格。請勿直接編輯唯一的檢查點。.

檢查點並非完整的版本控制系統。它可能僅包含一個較早的狀態,若筆記本從未被儲存過,則可能根本不存在。此外,透過某些介面刪除筆記本可能會一併移除相關的檢查點資料。因此,請盡早檢查此處,但切勿將其作為唯一的備份來源。.

方法 3:從垃圾桶還原已刪除的 .ipynb 檔案

如果整個檔案都消失了,請在使用資料恢復軟體之前先檢查作業系統。Jupyter Notebook 的官方 版本說明 新增功能,可將從 Notebook 儀表板刪除的檔案移至作業系統的資源回收筒,而非立即刪除。.

在視窗上

  1. 開啟 回收站.
  2. 搜尋筆記本名稱或依以下方式排序: 刪除日期.
  3. 請確認檔案的副檔名是否為 .ipynb。.
  4. 按一下滑鼠右鍵,然後選擇 還原.
  5. 返回原始專案資料夾,並開啟一份副本。.

在 macOS 上

開啟 垃圾, 找到該筆記本,右鍵點擊它,然後選擇 放回. 如果您是透過「Finder」或「終端機」刪除該檔案,請同時在「Finder」中以檔案名稱進行搜尋。.

在 Linux 上

請檢查您桌面環境的「垃圾桶」。常見的位置如下:

  1. ~/.local/share/Trash/files/

在受管工作站、容器或遠端伺服器上,實際位置可能會有所不同。此外,請一併搜尋專案目錄,以防筆記本只是被重新命名或移動,而非被刪除。.

透過 Shift+Delete 鍵、rm 等終端機指令,或清理程序刪除的檔案,可能會繞過「垃圾桶」。可移除式儲存裝置和網路共用資料夾的行為也可能有所不同。.

方法 4:從 IPython 歷史紀錄中還原已執行的程式碼

假設筆記本檔案已遺失,但其核心或 IPython 執行紀錄仍保留著。您仍可重建大部分的程式碼。請在新的筆記本或 IPython 控制台中執行以下指令:

  1. %history -n

此指令會將當前工作階段的程式碼輸入連同行號一併列印出來。若要從已儲存的歷史紀錄中搜尋特定的函式、變數、匯入指令或註解,請使用通配符模式:

%history -g “客戶流失率“

若要檢視跨工作階段的近期輸入內容,請嘗試:

%history -l 100

一旦確定所需的範圍,請將其匯出至新的腳本中:

%history -f recovered_notebook_code.py 4-38

請使用尚未存在的檔案名稱。該 IPython 官方文件 警告:透過筆記本介面使用 -f 選項可能會覆寫目標檔案。.

這是一種極有價值的方法,用以 在 Jupyter Notebook 中還原已刪除的程式碼, ,但其仍有明確的限制。IPython 的歷史記錄僅著重於輸入內容,不會完全還原 Markdown 說明、儲存格的排序順序、附於 Markdown 儲存格的圖片、筆記本元資料,或是每項顯示的輸出結果。您曾輸入但從未執行的程式碼,也可能不會被記錄下來。.

方法 5:檢查備份、同步記錄、Git 或主機平台

當檢查點失敗時,請在 Jupyter 之外尋找原因。具體應查哪裡,取決於 .ipynb 檔案的儲存位置。.

  • Windows 檔案歷史紀錄或先前版本: 開啟該筆記本的原始資料夾,查看其屬性,並尋找刪除前的版本。.
  • OneDrive、Dropbox 或 Google Drive: 如果專案資料夾已同步,請檢查雲端垃圾桶和版本歷史紀錄。.
  • Git: 檢查 Git 狀態、儲存庫歷史紀錄、其他分支、暫存區以及遠端副本。Git 僅能還原已提交或以其他方式保存的內容。.
  • JupyterHub 或大學/公司伺服器: 請向系統管理員詢問有關快照、伺服器垃圾桶、備份及保留期限的相關事宜。.
  • 課程平台與線上實驗室: 在重置工作區之前,請先查看「重置」、「還原」、「記錄」或「重新下載」等選項。重置可能會覆寫您目前的檔案。.

此位置檢查至關重要。本地資料回復程式無法直接掃描僅存在於遠端 JupyterHub 伺服器上的筆記本。在這種情況下,儲存空間與備份由服務擁有者或管理員負責管理。.

方法 6:使用 Magic Data Recovery 還原已刪除的 Jupyter Notebook

僅在「資源回收筒」、「檢查點」、「歷史紀錄」及「備份」均失敗後,才使用磁碟復原功能。此方法適用於曾儲存於 Windows 電腦、外接硬碟、USB 裝置或其他可連接至 Windows 的儲存裝置上的筆記型電腦。.

Magic Data Recovery 相較於 Jupyter 的內建工具,它能處理更廣泛的本地資料遺失情況。它可掃描因刪除、格式化、檔案系統錯誤、無法存取的分割區或相關邏輯問題而遺失的檔案。其引導式的掃描與恢復工作流程,也避免了某些資料恢復工具所需的命令語法。.

如何還原本機的 .ipynb 檔案

1. 保護來源磁碟。. 請停止使用曾存放該筆記本的磁碟機。如果該檔案位於 C: 磁碟機上,請盡可能避免在該處下載或安裝任何內容。.

2. 請安全安裝。. 下載 Magic Data Recovery 移至另一個磁碟機,或從未將受影響磁碟設為系統磁碟的 Windows 電腦上執行該程式。.

支援 Windows 7/8/10/11 和 Windows Server

3. 選擇原始位置。. 選擇原本存放專案資料夾的磁碟或分割區,然後開始掃描。.

使用 Magic Data Recovery 還原已刪除的 Jupyter Notebook

4. 縮小搜尋範圍。. 搜尋筆記本名稱、.ipynb 檔案、其原所在的資料夾,或大致的修改日期。根據殘留的檔案系統資訊,復原的筆記本可能會出現在「文件」或「其他檔案」目錄下。.

還原本機的 .ipynb 檔案

5. 還原至另一個磁碟。. 切勿將結果儲存回原始卷。.

復原至不同的硬碟機

6. 驗證還原後的副本。. 在 Jupyter 中開啟該檔案。若 Jupyter 顯示內容無效,請在文字編輯器中檢查該檔案的副本,並確認其內容為完整的 JSON 格式,而非檔案內容不完整或遭覆寫所致。.

當檢查點隨原始筆記本一併消失時,Magic Data Recovery 比檢查點更實用;而當底層的 .ipynb 檔案仍可恢復時,它又比 IPython 歷史紀錄更完整。此外,它還能掃描歷史紀錄無法還原的其他專案資產,例如 CSV 檔案、圖片、腳本和文件。.

儘管如此,沒有任何資料恢復工具能保證特定結果。SSD TRIM 功能、持續使用磁碟、安全刪除,或是物理損壞,都可能導致資料無法恢復。此外,除非您事先取得該伺服器儲存空間的存取權限,或取得該伺服器的本地磁碟映像檔,否則此軟體也無法恢復僅儲存於遠端伺服器上的檔案。.

您應該選擇哪種 Jupyter Notebook 復原方法?

方法

最適合

主要限制

Z / 撤銷儲存格操作

一則剛才刪除的簡訊

關閉或重新載入後,撤銷記錄可能會消失

檢查點

被覆寫的儲存格或不希望出現的工作簿狀態

病史通常有限;可能缺失

回收站或垃圾桶

一個最近被刪除的本地 .ipynb 檔案

永久刪除可能會繞過此限制

IPython %history

重建已執行的程式碼

無法還原完整的筆記本

備份、同步、Git 或伺服器快照

現存的早期版本

在遺失之前必定已經存在

Magic Data Recovery

Windows 系統上已刪除的本地檔案或邏輯儲存問題

無法復原已被覆寫的資料,亦無法掃描僅限遠端存取的儲存空間

實際上,最佳的順序是 撤銷 → 檢查點 → 垃圾桶 → 歷史紀錄 → 備份 → 磁碟掃描. 此順序可保護現行資料,並優先使用最直接的還原來源。.

如何避免再次發生 Jupyter Notebook 資料遺失的情況

一旦恢復了工作進度,請著手改進專案,而非僅僅依賴檢查點。.

  • 將重要的筆記本納入 Git 管理,並針對具有重要意義的里程碑進行提交。.
  • 請將專案存放於已備份或已進行版本控制的資料夾中。.
  • 在關鍵階段將重要的筆記本匯出為 .py 或 HTML 格式。.
  • 請將原始資料與生成的輸出結果分開儲存。.
  • 請使用明確的檔案名稱,而不是將所有檔案都命名為 Untitled.ipynb。.
  • 請使用 %pwd 確認筆記型電腦的實際路徑,特別是在使用遠端核心或已掛載的磁碟機時。.
  • 請在緊急情況發生前,先測試您的備份還原流程。.

對於積極進行的研究而言,養成一個簡單的習慣效果很好:在進行重大重構之前先提交筆記本,然後在清除儲存格或輸出結果之前,先儲存一份備份。.

總結

學習 如何在 Jupyter Notebook 中還原已刪除的檔案 首先需區分已刪除的儲存格與已刪除的 .ipynb 檔案。 若為近期刪除的儲存格,請按 Z 鍵;若需查閱較早的儲存狀態,請檢查檢查點;若需尋找完整的檔案,請查看作業系統的「垃圾桶」;若主要需要已執行的程式碼,則可使用 IPython 執行紀錄。至於託管型筆記本,請聯絡平台管理員並尋找伺服器端的快照。.

當遺失的筆記本位於本機的 Windows 磁碟機上,且上述方法均告失敗時,, Magic Data Recovery 值得一試,因為它透過清晰的掃描與恢復流程,能處理永久刪除、格式化儲存裝置以及檔案系統錯誤等問題。它還能協助找回 Jupyter 歷史紀錄無法重建的相關專案檔案。請迅速採取行動,掃描正確的裝置,並將恢復結果儲存至其他位置。如需有關安全恢復已刪除資料的更多指引,請造訪 Amagicsoft 的 刪除的檔案復原 資源。.

支援 Windows 7/8/10/11 和 Windows Server

關於 Jupyter Notebook 檔案復原的常見問題

在 Jupyter Notebook 中,我可以還原已刪除的儲存格嗎?

是的。如果筆記本保持開啟狀態,請按下 Esc 鍵進入指令模式,然後按下 Z 鍵以撤銷上一次的儲存格操作。您也可以選擇 撤銷儲存格操作 從選單或「指令面板」中執行。在儲存格返回結果後,請立即儲存一份副本。.

Jupyter Notebook 的檢查點檔案儲存於何處?

Jupyter 通常會將它們儲存於原始筆記本旁邊的隱藏資料夾 .ipynb_checkpoints 中。例如,名為 analysis.ipynb 的檔案可能會對應一個名為 analysis-checkpoint.ipynb 的檢查點。如果該筆記本從未被儲存,或其檢查點已被刪除,則該資料夾或檢查點可能並不存在。.

檢查點能否還原已被完全刪除的筆記本?

有時會,但無法保證。當原始檔案在 Jupyter 外部被刪除時,檢查點可能仍會保留;然而,某些刪除流程會一併移除相關的檢查點資料。請檢查 .ipynb_checkpoints 目錄,將任何可能的檢查點複製到其他位置,將其副檔名改為 .ipynb,然後開啟該副本。.

%history 是否會還原整個 Jupyter Notebook?

No. %history 能夠檢索由 IPython 記錄的程式碼輸入,在許多設定下,甚至包含先前工作階段的輸入內容。它無法完全重現 Markdown 儲存格、富格式輸出、附件、元資料或確切的儲存格順序。請將其視為重建程式碼的一種方式,而非完整的筆記本。.

刪除的 Jupyter Notebook 檔案會去哪裡?

透過現代 Jupyter 介面刪除的檔案,通常會被移至作業系統的「資源回收筒」或「垃圾桶」。然而,終端機指令、永久刪除快捷鍵、遠端伺服器、容器以及自訂內容管理系統的行為可能有所不同。請同時檢查本機的「垃圾桶」以及任何伺服器或平台專屬的還原區域。.

Magic Data Recovery 能否還原 .ipynb 檔案?

若已刪除的 .ipynb 檔案所儲存的資料及檔案系統記錄尚未被覆寫,本工具可從可存取的 Windows 儲存裝置中復原該檔案。您可依檔案名稱、副檔名、路徑及日期篩選掃描結果,然後將符合條件的檔案還原至另一顆磁碟。復原結果取決於裝置本身及後續的磁碟活動。.

我可以還原從 JupyterHub 刪除的筆記本嗎?

有可能,但能否恢復取決於主機。JupyterHub 筆記本通常儲存於伺服器管理的儲存空間中,因此請檢查該平台的垃圾桶、快照、同步記錄或備份。請立即聯絡系統管理員。若無法存取儲存空間,本機還原軟體將無法直接掃描僅存在於遠端伺服器的檔案。.

刪除筆記本後,我應該立即做些什麼?

請停止對受影響的儲存空間進行寫入操作。請勿安裝套件、清除快取、格式化磁碟,或重新建立同名檔案。請先檢查「還原」、「檢查點」、「垃圾桶」、「歷史紀錄」及「備份」。若該檔案為本機檔案且已被永久刪除,請嘗試從其他磁碟進行掃描。.

Jason 是一位擁有超過 15 年實務經驗的資料復原與技術支援專家。 他長期與第一線使用者密切合作,處理棘手的資料遺失案例,並針對誤刪資料、磁碟格式化、檔案系統損毀、分割區遺失、系統故障及其他緊急資料復原情況,提供實用的復原解決方案。其專業領域還涵蓋備份與還原、檔案修復及災難復原,並特別注重提供安全、可靠且技術上精準的指導。.