为什么要用这种方式进行迁移
这种方式可以绕过 Google Takeout,并且无需把网盘文件下载到本地,就能实现账号到账号的文件迁移。
第一步,文件共享
- 登录源账号,在 Google Drive 中新建一个文件夹
数据搬迁,右键,共享,添加目标 Google 账号,并赋予「编辑者」权限。 - 将需要迁移的文件全部移动到
数据搬迁文件夹中。
第二步,用快捷方式建立挂载通道
登录目标账号,在 Google Drive 「与我共享」中找到刚才共享的数据搬迁文件夹。右键,整理,添加快捷方式,目标选择「我的云端硬盘」。
如果不进行这一步,迁移程序将无法找到「与我共享」中的源路径
第三步,在 Google Colab 中运行 Python 迁移代码
用目标账户deng 登录 Google Colab ,新建一个笔记本,将以下 Python 代码粘贴到代码块中并运行:
from google.colab import drive
import os
# 1. 挂载(如果刚才挂载过,这步会很快)
drive.mount('/content/drive', force_remount=True)
# 2. 定义路径
# 现在源路径变成了你“我的云端硬盘”里的那个快捷方式
source_path = '/content/drive/My Drive/数据搬迁'
target_path = '/content/drive/My Drive/迁移数据接收'
if not os.path.exists(target_path):
os.makedirs(target_path)
print("正在通过快捷方式穿透到共享硬盘进行物理克隆...")
# 3. 使用 Python 的高级文件操作,比 cp 命令更兼容快捷方式
import shutil
def deep_copy(src, dst):
for item in os.listdir(src):
s = os.path.join(src, item)
d = os.path.join(dst, item)
if os.path.isdir(s):
print(f"正在复制文件夹: {item}")
shutil.copytree(s, d, dirs_exist_ok=True)
else:
shutil.copy2(s, d)
try:
deep_copy(source_path, target_path)
print("\n[🎉 成功] 所有文件已克隆至个人硬盘,且所有权已变更!")
except Exception as e:
print(f"\n[❌ 失败] 报错信息: {e}")开始运行后会提示需要登录账号授权,都同意。
目标账号 Google Drive 中会自动创建迁移数据接收文件夹,并把数据搬迁文件夹的所有文件复制到迁移数据接收文件夹中。而源账号下的原始文件将依然保留,不会被删除。
大功告成!
🔗 关联追踪
- See also: