Labels

Sunday, September 16, 2018

GDrive - List Files and Folders Recursive

function getFolders() {
 //https://developers.google.com/apps-script/reference/drive/folder-iterator

      var iRow = 1;
      var iColumn = 1;
   
      var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
      ss.getRange(iRow, iColumn).setValue("Folder");
      ss.getRange(iRow, iColumn + 1).setValue("FileName");
      ss.getRange(iRow, iColumn + 2).setValue("Count");

 var folders = DriveApp.getFolders();
 while (folders.hasNext()) {
      var folder = folders.next();
      var iCount = 0;

      //file iteration
      var dApp = DriveApp;
      var folderIter = dApp.getFoldersByName(folder.getName());
   
      var folder = folderIter.next();
      var filesIter = folder.getFiles();

     ss.getRange(iRow, iColumn).setValue(folder.getName());
     ss.getRange(iRow, iColumn + 1).setValue("NewFolder");
     ss.getRange(iRow, iColumn + 2).setValue(iCount);
    
    
      while (filesIter.hasNext()) {
        var file = filesIter.next();
        var fileName = file.getName();
     
       iRow = iRow + 1;
       iCount = iCount+1;
        //Logger.log(folder.getName() + " " + fileName );
        ss.getRange(iRow, iColumn).setValue(folder.getName());
        ss.getRange(iRow, iColumn + 1).setValue(fileName);
             ss.getRange(iRow, iColumn + 2).setValue(iCount);
      }
 }
}

No comments:

Post a Comment