arrays - sort files by datecreated and remove old files with google apps script -
trying make simple google apps script files name , order them date created. if there more 5 files same name, delete 5 newest files.
function tryme(){ var files = driveapp.getfilesbyname('thisfile'); var created = files.getdatecreated(); for(i in created) { if(created[i] > 4){ file.settrashed(true);} } }
you're trying use file method on file iterator (returns getfilesbyname() method).
here solution issue:
function tryme(){ // file iterator var files = driveapp.getfilesbyname('new text file'); var filearray = []; // put file on array while(files.hasnext()){ var file = files.next(); filearray.push([file, file.getdatecreated()]); } //while have more 5 files while(filearray.length>5){ var older = ["",new date()]; var olderindex; // older file for(var in filearray){ if(filearray[i][1].gettime() < new date(older[1]).gettime()){ olderindex = i; older = filearray[i]; } } // delete older file filearray.splice(olderindex,1); older[0].settrashed(true); } } edit: made mistake using driveapp.removefile() instead of file.settrashed(true)
Comments
Post a Comment