You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

共享云端硬盘中Google Apps Script删除临时文件报错求助

解决共享云端硬盘中Google Apps Script删除临时文件报错问题

问题原因

共享云端硬盘的文件所有权归团队而非个人,DriveApp.Folder.removeFile()方法的逻辑不适用于共享盘场景,因此执行时会抛出Exception: Cannot use this operation on a shared drive item错误。

解决方案

方法1:将临时文件移至回收站(推荐新手)

直接调用文件对象的setTrashed(true)方法,把临时文件标记为已删除并移入共享盘回收站,该操作在共享盘环境下可正常执行,只要你拥有编辑权限即可。

修改createPDF函数中的删除逻辑:

// 替换原代码中的 tempFolder.removeFile(newTempFile);
newTempFile.setTrashed(true);

方法2:彻底删除文件(需启用Drive高级服务)

如果需要直接彻底删除文件而非移入回收站,需先启用Google Drive Advanced Service:

  1. 在Apps Script编辑器中,点击「服务」→「添加服务」→ 选择「Drive API」完成添加
  2. 用以下代码替换删除逻辑:
Drive.Files.remove(newTempFile.getId(), {supportsAllDrives: true});

注意:此操作不可逆,且要求你的账号拥有共享盘的所有者/管理者权限。

权限前置检查

确保运行脚本的账号满足以下条件:

  • 在目标共享云端硬盘中拥有编辑者及以上权限
  • 共享盘的权限设置中已开启「允许成员删除文件」(路径:共享盘→设置→成员权限)

内容的提问来源于stack exchange,提问作者sedmundsfls

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 04:11:20