列出Google表格脚本中的所有文件夹和子文件夹

任何人都可以帮我改编从此处获取的代码

http://www.acrosswalls.org/ortext-datalinks/list-google-drive-folder-file-names-urls/

function listFolderContents() {
  var foldername = 'home folder';

  var folders = DriveApp.getFoldersByName(foldername)

  var folder = folders.next();
  var contents = folder.getFolders();

  var ss = Spreadsheetapp.getactive();
  var sheet = ss.getSheetByName('folders');
  sheet.clear();
  sheet.appendRow( ['name','link'] );

  var file;
  var name;
  var link;
  var row;
  while(contents.hasnext()) {
    file = contents.next();
    name = file.getName();
    link = file.getUrl();
    sheet.appendRow( [name,link] );     
  }  
};

还列出子文件夹(它现在仅列出第一个文件夹中的文件夹)。我觉得这很容易,但无法弄清楚。

谢谢

wnrs19850312 回答:列出Google表格脚本中的所有文件夹和子文件夹

这是您提供的符合您要求的代码的改编版本:

function listFolderContents(){
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('folders');
  sheet.clear();
  sheet.appendRow( ['name','link'] );
  // Get all folders
  var folders = DriveApp.getFolders();
  var file;
  // Iterate over them
  while(folders.hasNext()){
    file = folders.next();
    sheet.appendRow([file.getName(),file.getUrl()]);
  }
}

您必须使用DriveApp.getFolders();来获取云端硬盘中的所有文件夹,然后才能遍历它们。

文档

请检查以下文档,以更熟悉如何使用Apps脚本处理云端硬盘文件夹:

本文链接:https://www.f2er.com/3117378.html

大家都在问