在Google Apps脚本中获取脚本的文件夹ID

时间:2014-03-02 22:04:02

标签: google-apps-script

如何获取当前脚本的ID或文件夹ID?我希望能够将脚本复制到文件夹中,并使其在特定于该文件夹的文件夹/文件上运行,而无需手动查找文件夹ID。

我尝试过像'this.getParents()'这样的东西但是没有得到任何东西。在此先感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

这是我之前基于answer from CoreyG编写的一个脚本,它正是您正在寻找的,而且只是更多......

function getScriptFolderTree() {
  var thisScript = getThisScriptInDrive();
  var names = [];
  var Ids = [];
  var folder = thisScript.getParents()[0];
  while (folder.getName() != "Root"){
      names.unshift(folder.getName());
      Ids.unshift(folder.getId());
      var parents = folder.getParents();
      var folder = parents[0];
  }
  Logger.log('Root/'+names.join().replace(/,/g,'/'));
  Ids.unshift(DocsList.getRootFolder().getId());
  Logger.log(Ids)  
}


function getThisScriptInDrive() {
  return DocsList.find("poiuytrezazertyujhgfdsdcvcxyydryfhchfh")[0];
}

答案 1 :(得分:0)

Theres目前没有办法。 你为什么不在第一次运行时这么做就要求用户选择要在(filepicker)运行它的文件夹并将其保存在脚本属性上?