有没有人对如何删除与我共享的文件有任何建议?我需要在没有实际撤销访问权限的情况下执行此操作,因为人员是通过联系人组添加的,因此只删除1个人将无法正常工作。
注意事项:
我知道使用它可以找到文件:
var files = DriveApp.searchFiles('sharedWithMe');
//then I set file = what I'm looking for.
但是,这不会删除与我共享的文件:
DriveApp.removeFile(file);
我也尝试通过修补元数据来强制执行,除非它无济于事。 另外,假设与我共享是一个文件夹是错误的,就像列出父文件夹时文件没有返回任何内容一样。
答案 0 :(得分:0)
只有DriveApp无法完全删除文件。因此有必要使用Drive API。 " removeFile()"用于更改父文件夹信息。它无法删除文件。我准备了2个样本来删除文件。如果您是该文件的所有者,则可以将其删除。
将文件移至垃圾箱并清空垃圾箱:
var file = DriveApp.getFilesByName("filename").next();
file.setTrashed(true)
Drive.Files.emptyTrash();
直接删除文件:
Drive.Files.remove("fileID");
已确认即使其他用户正在使用,上述脚本也可以删除文件。
要使用上述脚本,必须在Drive API at Advanced Google Services开发人员控制台项目中启用https://console.developers.google.com/和Drive API。
没有父文件夹的文件:
如果您使用了" removeFile()",则没有父文件夹的文件可能存在于您的驱动器中。您可以按照脚本确认它们。这可以检索没有父文件夹的文件的文件名和文件ID。
var result = [];
var files = DriveApp.getFiles();
while (files.hasNext()) {
file = files.next();
if (!file.getParents().hasNext()) {
result.push([file, file.getId()]);
}
}
Logger.log(result);