在迁移到团队驱动器的过程中,我们有一个文件夹被迁移了两次。第一次被中断了,现在我们有数千个重复的文件夹,里面什么都没有。我希望删除或至少删除特定团队驱动器上完全为空的任何文件夹。我发现了一个旧的脚本,我尝试修改如下:
function delEmptyFolders() {
var folders = DriveApp.getFolders();
var ss = SpreadsheetApp.create("folderslist");
while (folders.hasNext()) {
var folder = folders.next();
var files = folder.getFiles();
var childfolders = folder.getFolders();
var filecount = 0;
var foldercount = 0;
while (childfolders.hasNext()){
var childfolder = childfolders.next();
foldercount ++;
}
while (files.hasNext()){
var file = files.next();
filecount ++;
}
ss.appendRow([folder.getId(),folder.getName(),filecount, foldercount]);
if (filecount == 0 && foldercount == 0){
folder.setTrashed(true);
}
}
}
我的问题是,我如何让这个脚本在特定的团队驱动器上运行,或者更好的是,在团队驱动器的特定文件夹中运行?
注释中回答了原始问题-下面是新脚本-注释中的后续问题
提前感谢你的帮助和我的道歉,因为我在编码或脚本没有很好的经验。
function starEmptyFolders() {
var folders = DriveApp.getFolderById('ID').getFolders();
var ss = SpreadsheetApp.create("test");
while (folders.hasNext()) {
var folder = folders.next();
var files = folder.getFiles();
var childfolders = folder.getFolders();
var filecount = 0;
var foldercount = 0;
while (childfolders.hasNext()){
var childfolder = childfolders.next();
foldercount ++;
}
while (files.hasNext()){
var file = files.next();
filecount ++;
}
////////////////////
var child = childfolders;
var subFolders = child.getFolders();
while(subFolders.hasNext()) {
var subFolder = subFolders.next();
var subfoldercount = 0;
subfoldercount ++}
///////////////////////////
}
ss.appendRow([folder.getId(),folder.getName(),filecount, foldercount, subfoldercount,]);
if (filecount == 0 && foldercount == 0){
folder.setStarred(true);
https://stackoverflow.com/questions/49015740
复制相似问题