File 如何最好地删除文件夹及其子文件夹中的所有文件
你好。我正在尝试获取文件夹和子文件夹中的所有文件并将其删除,但代码不起作用,它只通过第一个子文件夹,其中没有文件,脚本结束,请帮助File 如何最好地删除文件夹及其子文件夹中的所有文件,file,google-apps-script,File,Google Apps Script,你好。我正在尝试获取文件夹和子文件夹中的所有文件并将其删除,但代码不起作用,它只通过第一个子文件夹,其中没有文件,脚本结束,请帮助 function DeleteInvoices() { var folder = DriveApp.getFolderById("1-2VAPBzEQxCaoN7KGSB_K_peiLIDk32e"); var fl = folder.getFolders(); while (fl.hasNext()) { var files = fl.
function DeleteInvoices() {
var folder = DriveApp.getFolderById("1-2VAPBzEQxCaoN7KGSB_K_peiLIDk32e");
var fl = folder.getFolders();
while (fl.hasNext()) {
var files = fl.next();
Logger.log(files)
var fs = files.getFiles();
while (fs.hasNext()) {
var fss = fs.next();
fss.setTrashed(true)
}
}
}
我相信你的目标如下
- 您想删除
文件夹中的所有文件。1-2VAPBzEQxCaoN7KGSB_K_peilid32e
- 在这种情况下,您希望将文件删除到垃圾箱中
的文件夹有子文件夹,您希望删除所有子文件夹中的所有文件夹1-2VAPBzEQxCaoN7KGSB_K_peilid32e
- 您不想删除子文件夹
- 在您的脚本中,我认为可以检索
文件夹下文件夹中的文件。1-2VAPBzEQxCaoN7KGSB_K_peilid32e
- 例如,如果
的文件夹有两个文件夹,并且这两个文件夹有一个文件和一个文件夹,每个文件夹中包括一个文件,则脚本将检索两个文件。因为脚本从1-2VAPBzEQxCaoN7KGSB_K_peilid32e
文件夹下的文件夹中检索文件1-2VAPBzEQxCaoN7KGSB_K_peilid32e
- 例如,如果
- 为了遍历
中的所有子文件夹,需要使用递归循环扫描所有文件夹,包括1-2VAPBzEQxCaoN7KGSB_K_peilid32e
中的子文件夹1-2VAPBzEQxCaoN7KGSB_K_peilid32e
- 在此脚本中,所有子文件夹中的所有文件都将使用
功能进行扫描,并删除这些文件。(它们被移动到垃圾箱。)getAllFiles
- 已删除文件的文件名显示在控制台中
- 在此脚本中,请将其与启用V8运行时一起使用
- 当文件数量较大时,首先检索文件ID,下一步,使用批处理请求删除文件可能比较合适李>
function DeleteInvoices() {
const getAllFiles = folder => {
const files = folder.getFiles();
while (files.hasNext()) {
const file = files.next();
console.log(file.getName());
file.setTrashed(true);
}
const folders = folder.getFolders();
while (folders.hasNext()) getAllFiles(folders.next());
}
var folder = DriveApp.getFolderById("1-2VAPBzEQxCaoN7KGSB_K_peiLIDk32e");
getAllFiles(folder);
}