用 Python 寫一個自動備份重要檔案的小程式

有沒有遇過電腦壞掉、資料全沒的悲劇?或是臨時要交報告、發現檔案版本搞錯?
今天我們要學的,就是用 Python 寫出一個自動備份工具,讓你再也不用怕資料遺失!


📁 我們的目標

我們要做的程式能夠:

  • 自動複製指定資料夾裡的檔案
  • 每天(或每次啟動)備份到另一個安全的位置
  • 自動在備份資料夾裡建立時間標籤(例如 2025-11-06)

聽起來很專業對吧?但你會發現,其實超簡單。


🧩 第一步:準備環境

如果你還沒有安裝 Python,請先看上一篇文章《用 ChatGPT + Python 實現自動化小工具》學會安裝。

安裝好後,確認可以在終端機輸入:

python --version

出現版本號就沒問題了。


🤖 第二步:讓 ChatGPT 幫我們生成備份程式

打開 ChatGPT,輸入這段提示詞:

請用 Python 寫一個自動備份資料夾的程式。
要求:
- 複製指定資料夾的所有檔案到備份資料夾
- 備份資料夾名稱要加上日期
- 備份時顯示目前進度

ChatGPT 就會給出下面的程式:

import os
import shutil
import datetime

# 要備份的資料夾
source_folder = r"C:\Users\YourName\Documents"

# 備份目的地資料夾
backup_root = r"D:\Backups"

# 建立日期標籤
today = datetime.date.today().strftime("%Y-%m-%d")
backup_folder = os.path.join(backup_root, f"backup_{today}")
os.makedirs(backup_folder, exist_ok=True)

# 開始備份
print(f"開始備份 {source_folder} 到 {backup_folder}")

for file_name in os.listdir(source_folder):
    source_path = os.path.join(source_folder, file_name)
    dest_path = os.path.join(backup_folder, file_name)

    if os.path.isfile(source_path):
        shutil.copy2(source_path, dest_path)
        print(f"✔ 已備份:{file_name}")

print("✅ 備份完成!")

🧠 第三步:實際執行

1️⃣ 開啟記事本,貼上上面的程式碼。
2️⃣ 儲存為 backup.py
3️⃣ 修改路徑 source_folderbackup_root 為你自己的資料夾。
4️⃣ 打開命令提示字元,進到程式所在資料夾,輸入:

python backup.py

幾秒鐘後,你的 D 槽(或備份磁碟)會出現一個新資料夾,例如:

D:\Backups\backup_2025-11-06

裡面就是你最新的所有檔案。


🧱 延伸升級

你可以試試:

  • 使用 shutil.copytree() 備份整個子資料夾結構
  • schedule 套件讓它每天自動執行
  • 加上 zipfile 模組,讓備份自動壓縮成 ZIP
  • 寫個小批次檔(.bat)讓 Windows 自動啟動

想更厲害?你可以搭配雲端(例如 Google Drive、OneDrive)自動同步備份檔案,實現「全天候安全備份」!


🌱 結語

這篇文章教你做出了一個實用的「自動備份」工具。它不但幫你節省時間,也讓你遠離資料遺失的風險。

從這裡開始,你已經邁出程式世界最關鍵的一步——用程式解決自己的問題!

下一篇,我們會進階到「自動下載網站圖片」與「自動寄信提醒」的實戰例子。敬請期待 👀

留言

這個網誌中的熱門文章

我創造了一門新的語言

使用內網穿透技術優化星露谷物語聯機體驗

談戀愛不是靠運氣,是一種能學會的溝通力