服務DocsList
已被棄用。此答案使用較新的DriveApp
服務。
如果您不想清除垃圾桶,還有另一種方法可以在不將垃圾箱發送到垃圾箱的情況下刪除文件。 Apps腳本中的高級驅動器服務有一個remove
方法,該方法不會將文件發送到垃圾箱。
var eachFile, idToDLET, myFolder, rtrnFromDLET, thisFile;
myFolder = DriveApp.getFolderById('Put_The_Folder_ID_Here');
thisFile = myFolder.getFilesByName(myFileName);
while (thisFile.hasNext()) {//If there is another element in the iterator
eachFile = thisFile.next();
idToDLET = eachFile.getId();
//Logger.log('idToDLET: ' + idToDLET);
rtrnFromDLET = Drive.Files.remove(idToDLET);
};
這結合了DriveApp服務和Drive API刪除文件而不將它發送到垃圾箱。 Drive API方法.remove(id)
需要文件ID。如果文件ID不可用,但文件名是,則可以首先按名稱查找文件,然後獲取文件ID。
爲了使用DriveAPI,您需要通過資源,高級谷歌服務菜單添加它。將Drive API設置爲ON。 AND確保您的Google Developers Console中的Drive API處於打開狀態。如果在BOTH地方沒有開啓,則它將不可用。
它的工作原理!謝謝很多謝爾 – user1962847
很高興幫助 - 請標記爲答案:-) –
@Sergeinsas我知道這是一個過時的問題,但我希望你仍然可以幫助創建一個循環,將刪除較舊的文件與較新的文件。我試圖找出如何查看文件夾中的所有文件,這些文件總是有6個文件的名稱保持一致,所以我只需要一個例程腳本,它將每24小時刪除每個文件的舊版本。我知道這不是最安全的選擇,但根據我的情況它是最好的選擇之一。特別是因爲只有我自己管理這些文件,所以不需要共享驅動器。 – CaffeinatedCoder