无法自动永久删除Google云端硬盘上的文件

时间:2019-10-13 13:00:34

标签: google-apps-script google-drive-api

我尝试使用google script删除文件而不会造成垃圾,但是出现错误:

Drive.Files.remove(File.getId())

这是完整的脚本:

function DeleteOldFiles() { 

var Folders = new Array( 'FOLDER_ID_HERE', 'FOLDER_ID_HERE' ); 
var Files; 
Logger.clear(); 
for each (var FolderID in Folders) { 
Folder = DriveApp.getFolderById(FolderID);
 Files = Folder.getFiles(); 
while (Files.hasNext()) { 
var File = Files.next(); 
if (new Date() - File.getLastUpdated() > 7 * 24 * 60 * 60 * 1000) { 


 File.setTrashed(true); // Places the file int the Trash folder 
      //Drive.Files.remove(File.getId()); // Permanently deletes the file 
   Logger.log('File ' + File.getName() + ' was deleted.'); 
    } 
} 
} 
    if(Logger.getLog() != '') 
    MailApp.sendEmail('YOUR_EMAIL_ADDRESS', 'Backups have been removed from Google Drive', Logger.getLog()); } 

取消注释“ //”时

该如何解决?

此处是屏幕截图: http://i.imgur.com/fwAbHiY.png

1 个答案:

答案 0 :(得分:1)

答案:

要在Apps脚本中使用Drive.Files.remove()方法,您需要激活Advanced Drive服务。

分辨率:

在Apps脚本用户界面中,像这样单击Resources > Advanced Google Services

enter image description here

在新窗口弹出窗口中,向下滚动到Drive API,并确保在下拉列表中选择了v2,请单击右侧的滑块,以使它不显示'off '它变成绿色并切换为'on':

enter image description here

您可以从此处使用高级Google云端硬盘服务,例如Drive.Files.remove()