【问题标题】:how to find files not owned by me in Google apps script如何在 Google Apps 脚本中查找不属于我的文件
【发布时间】:2016-06-13 23:00:53
【问题描述】:

在 Google 云端硬盘中,您可以搜索“不属于我”的文件。 我需要从 Google Apps 脚本访问它。 我已经尝试过 DocsList.find("Not 'me' in owner");这似乎是在驱动器 API 中执行此操作的方法,但没有成功(事实上,这让我作为所有者获得了我的文件。)我还用我的电子邮件地址替换了我,带引号和不带引号,但再次没有成功。

有谁知道这是否可能(除了通过迭代所有文件并手动检查 getOwner().getEmail() 之外,鉴于此特定用户拥有大量文件,这将花费太长时间。)

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    我认为目前更新的答案是使用 DriveApp.searchFiles(params) (https://developers.google.com/apps-script/reference/drive/drive-app#searchFiles(String))。 代码类似于:

     // Log the name of every file in the user's Drive that shared with me
     var files = DriveApp.searchFiles('sharedWithMe');
     while (files.hasNext()) {
       var file = files.next();
       Logger.log(file.getName()); 
     }
    

    【讨论】:

      【解决方案2】:

      此函数将返回与您共享的所有文件的数组。它使用Advanced Drive Service,它必须是enabled before use

      /**
       * Get array of files on user's Google Drive that have been shared with them.
       * From https://stackoverflow.com/a/15947340/1677912
       *
       * @returns   {Array}   Array of file resources
       *                      (see https://developers.google.com/drive/v2/reference/files#resource)
       */
      function getSharedWithMe() {
        var optionalArgs = {q:"sharedWithMe=true"};
        var sharedFiles = Drive.Files.list(optionalArgs);
        debugger;  // pause in debugger
        return sharedFiles.items;
      }
      

      您可以使用 Google Drive SDK“Explorer”来完成同样的操作,而无需代码。

      请参阅 this previous answer 使用此技术获取已删除文件的列表。

      您可以在 Google Drive SDK 文档页面底部找到文件:列表的 Files List API Explorer。有关搜索词的信息,请参阅Search for files。出于我们的目的,我们将只使用sharedWithMe

      如果您将“字段”留空,您将获得有关共享文件的所有信息。您可以使用难以看到的减号标签展开和折叠结果。但是限制输出是有帮助的。我用items(id,selfLink,owners/displayName)。看起来是这样的:

      【讨论】:

      • 谢谢,事实证明我在该调用中不需要查询(所有者中的“MYEMAILADDRESS”),但生成的 json 正是我在 appscript 中执行我想要的操作所需要的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多