繁体   English   中英

Google应用程序脚本如何将多个文件移动到文件夹中?

[英]Google app scripts How do I move several files into a folder?

有人可以帮助我吗? 我需要移动几个文件。 所以我要做的是按名称查找文件。 但是,当我使用getfilebyName时,类型是文件插入器,因此无法对其进行复制。 以下代码可以工作,但我不知道该如何对多个文件进行操作

function copyAndMove(files,folder){

  var files = DriveApp.getFileById('16QnYGb19tlCDu18KNwYPZkNgtE4T2ElK3Q_djI-hF64');
  var folder=DriveApp.getFolderById('0B6ZorjJGEpzgOFFQdF9yT24zc2s');
 var newfile = files.makeCopy('copy of '+ files.getName(), folder);
    DriveApp.removeFile(files);

您可以通过以下语句使用Iterator:

while (files.hasNext()) {

        var file = files.next();
        // do stuff with the file

}

例如,此代码允许您将内容从一个文件夹移动到另一个文件夹:

function moveFiles(source_folder, dest_folder) {

  var files = source_folder.getFiles();

  while (files.hasNext()) {

    var file = files.next();
    dest_folder.addFile(file);
    source_folder.removeFile(file);

  }
}

资料来源: ctrlq.org

编辑:您可以按名称移动文件。 此函数将按名称获取文件,将其从实际位置删除,然后将它们放在dest_folder上:

function moveFiles(string_name, dest_folder) {

  var files = DriveApp.getFilesByName(string_name);

  while (files.hasNext()) {

    var file = files.next();
    var parents = file.getParents();

    while (parents.hasNext()) {

      var parent = parents.next();
      parent.removeFile(file);

    }

    dest_folder.addFile(file);

  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM