TL; DR :如何确保文件副本存储在与使用Google Apps脚本创建原始文件的文件夹相同的文件夹中?
长话: 我正在使用一个Google电子表格,该电子表格保存在Google云端硬盘上名为FileFolder的共享团队文件夹中。该团队还具有另一种文件夹结构,其中某些文件夹与外部各方共享(ShareFolders A..Z)。我不确定文件也将存储在其他许多文件夹中(例如4thQuarterFolder M)。
当我使用菜单制作文件副本(“文件”->“制作副本...”)时,Google建议使用正确的文件夹。
但是,我想通过脚本来执行此操作(其他团队成员应该可以通过自定义菜单来执行此操作)。以下脚本(per documentation)使我可以循环访问文件存储在的不同文件夹:
var ss = SpreadsheetApp.getActive();
var file = DriveApp.getFileById(ss.getId());
var folders = file.getParents();
while(folders.hasNext()){
var folder = folders.next();
Logger.log(folder.getName());
}
问题是,这并没有告诉我在file.makeCopy(name, destination)
中选择哪个文件夹作为目的地。我看到here的“根”文件夹不是最后一个元素,还是数组的顶部(相互矛盾),但是在我和同事的桌面上进行测试时,我看不到任何模式。