如何用Google Apps Script自动移动Google Drive指定名称文件到对应文件夹
需求实现确认
你的文件自动归类需求完全可以通过Google Apps Script实现,全部逻辑在云端运行,不需要保持个人电脑开机。
前置准备
提前在Google Drive中创建好所有课程对应的目标归档文件夹,打开对应文件夹后,复制浏览器地址栏末尾的字符串,即为该文件夹的ID,后续配置需要用到。
可用示例代码
新建Google Apps Script空白项目后,将默认代码替换为以下内容,按照注释修改配置项即可:
// 仅修改下方配置部分即可使用 const CONFIG = { // 课程编号与对应归档文件夹ID的映射,有更多课程直接按格式新增 courseFolderMap: { "CAD 142": "替换为CAD 142对应的Recordings文件夹ID", "CAD 242": "替换为CAD 242对应的Recordings文件夹ID" }, // 录屏文件存放的根文件夹ID,扫描整个网盘就填"root" scanRootFolderId: "root", // 已处理文件标记,避免重复移动 processedTag: "已完成归档" } function archiveCourseRecordings() { const rootFolder = DriveApp.getFolderById(CONFIG.scanRootFolderId); const allFiles = rootFolder.getFiles(); while (allFiles.hasNext()) { const currentFile = allFiles.next(); // 跳过已经处理过的文件 if (currentFile.getDescription() === CONFIG.processedTag) continue; const fileName = currentFile.getName(); // 匹配文件名开头的课程编号 for (const [courseCode, targetFolderId] of Object.entries(CONFIG.courseFolderMap)) { if (fileName.startsWith(courseCode)) { const targetFolder = DriveApp.getFolderById(targetFolderId); // 移动文件到目标文件夹 currentFile.moveTo(targetFolder); // 给文件打标记,避免下次重复处理 currentFile.setDescription(CONFIG.processedTag); break; } } } }
配置与运行指引
- 代码修改完成后保存项目,首次运行时会弹出权限申请,按照页面提示完成授权,允许脚本访问你的Google Drive文件即可。
- 测试验证:手动选择
archiveCourseRecordings函数运行,检查对应录屏文件是否被移动到正确的归档文件夹,确认逻辑无误后再配置定时运行。 - 配置定时触发:进入左侧菜单栏的「触发器」页面,点击添加触发器,触发函数选择
archiveCourseRecordings,触发类型设置为「时间驱动」,按照你的需求设置执行间隔(如每2小时、每4小时执行一次),保存后触发器自动生效。
注意事项
- 首次使用前建议先上传几个测试文件验证逻辑,避免误操作原有文件。
- 如果你的录屏文件存放在根目录下的子文件夹中,可调整代码逻辑为递归遍历所有子文件夹内的文件。
- 普通个人Google账号的Apps Script每日运行时长配额为90分钟,该脚本单次运行仅需数秒,完全可以满足高频定时运行的需求。
内容的提问来源于stack exchange,提问作者Joseph Brown
相关产品推荐
相关产品推荐

