DriveApp没有“移动”功能(截至今天)。如何移动此文件夹(及其所有内容)?
我希望移动source_folder(当前位于parent_folder中)
var source_Folder = DriveApp.getFolderById(source_id);
var parent_Folder = DriveApp.getFolderById(parent_id);
并将其放在target_folder内:
var target_folder = DriveApp.getFolderById(target_id);
我已经有source_id,parent_id和target_id
答案 0 :(得分:1)
我环顾四周,对此问题也有类似的问题/答案。我这样做是(希望)使遇到相同问题的其他人容易。
Google云端硬盘中的“文件夹”的工作方式与 Gmail。
您可以在Google云端硬盘中的多个位置添加文件夹。它仍然只是一个文件夹(而不是副本),因此可以在添加文件夹的所有位置使用其内容。
要模拟移动source_folder,您 可以:
1)首先将source_folder添加到target_folder
target_folder.addFolder(source_folder);
2)从其父级中删除source_folder。
parent_folder.removeFolder(source_folder);
完整的示例代码:(注意:您需要文件夹ID)
function move_folder() { // id looks like this: 1XqH79csKkPMvTsCxMUzkkpURETKHJ
var source_id = "[insert_folder_id]"; // folder you wish to move
var parent_id = "[insert_folder_id]"; // where the folder is currently
var target_id = "[insert_folder_id]"; // where you want to put the folder
var source_Folder = DriveApp.getFolderById(source_id);
var parent_Folder = DriveApp.getFolderById(parent_id);
var target_Folder = DriveApp.getFolderById(target_id);
target_folder.addFolder(source_folder); // source_folder now 2 places
parent_folder.removeFolder(source_folder); // cleanup
}
如何获取folder_id。
在这里也找到了很好的答案:Implement a folder move function in Google Dirve