Этот ответ работает для меня в папке, которой я поделился с другой учетной записью.
function getMyFilesFromFolder() {
var myFolderId = "FolderId";
var files = DriveApp.getFolderById(myFolderId).getFilesByType(MimeType.GOOGLE_SHEETS);
var myFiles=[];
while(files.hasNext()) {
var file = files.next();
if(file.getOwner().getEmail()==Session.getActiveUser().getEmail()) {
myFiles.push({name:file.getName(),id:file.getId(),owner:file.getOwner().getEmail(),currentuser:Session.getActiveUser().getEmail()});
Logger.log(Utilities.formatString('Name: %s Id: %s Owner: %s CurrentUser: %s', file.getName(),file.getId(),file.getOwner().getEmail(),Session.getActiveUser().getEmail()));
}
}
}
Дайте мне знать, работает ли он для вас. Это должно быть только ведение журнала принадлежащих вам файлов. Таким образом, адрес электронной почты текущего пользователя и адрес электронной почты владельца должны совпадать.
Я также проверил это в общей папке, и она работает. Я не хотел ничего удалять, поэтому изменил несколько вещей, и я просто искал Google Sheets.
function getOldFileIDs() {
// Old date is 3 Hours
var oldDate = new Date().getTime() - 3600*1000*3;
var cutOffDate = new Date(oldDate).toISOString();
// Get folderID using the URL on google drive
var folder = DriveApp.getFolderById('1iJTAdlhCM13c1CB5xMAjtLZlkaPMIlPb');
var files = folder.getFilesByType(MimeType.GOOGLE_SHEETS);//Just looking for Google Sheets
var obj = [];
while (files.hasNext()) {
var file = files.next();
obj.push({name: file.getName(),id: file.getId(), date: file.getDateCreated(), owner: file.getOwner().getEmail()}); // Modified
}
obj.sort(function(a, b) {
var a= new Date(a.date).valueOf();
var b= new Date(b.date).valueOf();
return b-a;
});
//obj.shift();//I wanted to log all of them
return obj; // Modified
};
function logFiles() {
var email = Session.getActiveUser().getEmail();// Added
var obj = getOldFileIDs(); // Modified
obj.forEach(function(e) { // Modified
if (e.owner == email) { // Added
//Drive.Files.remove(e.id); // Modified
Logger.log('FileName: %s,Owner Email: %s',e.name,e.owner);
}
});
};