我一整天都在努力,我发现了这个: http://www.jellybend.com/2012/12/19/monitor-google-drive-folders-with-google-apps-script/
附加的脚本只对我有用。即使子文件夹中有文件(例如,重命名/删除子文件夹),它也不会对子文件夹的更改做出响应。如果我再次删除并重新添加相同的文件到文件夹,它似乎也有错误,它只是没有通过电子邮件发送给我新添加的"旧文件"。
我也发现了这个: https://developers.google.com/drive/v2/reference/changes/list#examples
但不幸的是,我不确定那些参数是什么,我只是没有经验写这样的东西。
任何帮助将不胜感激!谢谢!
答案 0 :(得分:3)
该链接的文件监控代码是绑定到工作表的Apps脚本。应用程序脚本可以绑定到工作表,文档,表单或站点。 Apps脚本也可以是stand alone
应用程序。因此,您可能想要编写的任何代码都不需要在电子表格中。
可以将Apps脚本设置为具有Time-driven
事件触发器。
还有Script Service
来构建时钟触发器。
使用时间驱动事件触发器或时钟触发器,您可以使用getSize()
方法返回项目使用的磁盘空间量:
Class - Folder - getSize Method
// This example logs the first file's size in bytes
// Note: This can also be used on a folder to get the size of its contents
var file = DocsList.getAllFiles[0];
Logger.log(file.getSize());
当然,您需要知道文件夹或文件的原始大小是什么,因此您需要将当前大小存储在某处。您可以创建用于存储该信息的文件,或使用Apps Script具有的内置数据库。
要存储您的历史文件夹或文件信息,您可以使用ScriptDB
。
引用:
ScriptDB是Google Apps脚本的JavaScript对象数据库。每个脚本项目都有一个数据库,脚本可以使用该数据库来保存,更新和搜索JavaScript对象数据。
您也可以将历史文件和文件夹信息写入电子表格或文档。
取决于谁拥有该文件以及谁正在访问该文件,需要授予权限,或者您需要使用oAuth2
来验证谁有权访问该文件和文件夹信息。
如果您无法自己编写所有代码,则可以设置共享的Apps脚本文件,或者找一些其他方式让人们在项目上进行协作。
答案 1 :(得分:2)
我自己一直在研究这个问题,并且想出了一个绑定到电子表格的脚本。希望它可以帮助某人,因为似乎很多人都在寻找类似的东西。我的脚本正在监视文件夹,并在添加新文件后立即向该文件夹的所有当前查看者发送通知。可以根据用户的需要设置运行脚本的触发器。在我的情况下,每小时工作得很好。
使用脚本传播表:https://docs.google.com/spreadsheets/d/1CzVADjUTT2d9Y5OGDOnv37mCaO49kPt4RmnyZgzjTKA/edit#gid=0
如果您想尝试使用此脚本,请确保在打开链接时使用Google帐户登录,并且您应该可以复制电子表格。
答案 2 :(得分:0)
当添加,重命名,更改或修改Google云端硬盘文件夹中的文件时,此Google脚本会向您或其他电子邮件地址发送电子邮件通知。 http://baumbach.com/google-script-2/