我想知道是否有人可以帮我看一下这个。
- 目标
我的公司在谷歌驱动器上有大量的客户端文件夹,里面装满了内容(文件和文件夹)。我试图采取所有现有的内容,并将其移动到每个客户端文件夹中名为"旧客户端工作"的新创建的文件夹。
这个问题当我运行代码时,移动文件夹有一个问题。创建"老客户作品";文件夹工作正常,将现有文件移动到其中也是如此。但是当试图移动文件夹时,代码遇到了一个错误。
代码下面是我的代码:
function createOldClientWorkFolder() {
var clientContentFolder = DriveApp.getFolderById("IDhere");
var clientFolders = clientContentFolder.getFolders();
while(clientFolders.hasNext()) {
var client = clientFolders.next();
var oldWorkFolder = client.createFolder('Old Client Work');
var clientContentFiles = client.getFiles();
var clientContentFolders = client.getFolders();
while (clientContentFiles.hasNext()) {
var fileToMove = clientContentFiles.next();
fileToMove.moveTo(oldWorkFolder)
}
while (clientContentFolders.hasNext()) {
var folderToMove = clientContentFolders.next();
folderToMove.moveTo(oldWorkFolder)
}
}
}
任何帮助将不胜感激!
(由于您没有提供日志/错误消息,我猜在这里,但我遇到了类似的东西,不久前,而试图移动文件夹,所以我认为这可能会有所帮助。)
moveTo
要求您对要移动的对象本身具有权限。有没有可能,你的应用程序脚本没有写权限到实际的客户端文件夹?(moveTo
修改你试图移动的文件夹对象的parent
属性,所以你也读写权限,而不仅仅是读)。