addToFolder():如果删除原始版本,则删除该文件的副本版本

1 directory copy google-sheets google-apps-script

我几天前开始使用谷歌脚本进行开发,最近加入了stackoverflow.我有addToFolder()函数的问题.我有以下代码将我的新电子表格复制到我的Google云端硬盘中的文件夹(测试/工作表)中:

var ss = SpreadsheetApp.create("test");
var ssID = ss.getId();
DocsList.getFileById(ssID).addToFolder(DocsList.getFolder("test/sheets"));
Run Code Online (Sandbox Code Playgroud)

我的问题是,现在我有两个版本的同一个文件(一个在我的Google Drive文件夹的根目录,另一个在test/sheets文件夹中),每当我尝试删除其中一个副本时,另一个副本也会被删除.有没有办法删除旧文件并保留新文件或者有没有办法在首先在所需的文件夹中创建文件?


编辑:

谢谢你的快速反应.我玩了几个小时,但仍然有问题将文件复制到目标文件夹.问题是,即使我使用文件的makeCopy方法,仍然addToFolder是唯一提到该文件夹​​的选项.同样,这最终在目标文件夹中具有标记的文件名.我在复制方法上遇到了同样的问题.
这是我的新代码:

var SetLocationFile = "icompare/sheets/stocks" 
var FolderID = DocsList.getFolder(SetLocationFile); 
var FileID = DocsList.getFileById(ssID); 
FileID.makeCopy("test3").addToFolder(FolderID);
Run Code Online (Sandbox Code Playgroud)

use*_*598 5

Google文档\ Google云端硬盘中的文件夹实际上是标签.当您将文件"添加"到"test/sheets"文件夹时,您不会复制文件,只需将"test/sheets"标记附加到该文件即可.现在,同一文件显示在"test/sheets"文件夹中(即在所有带有"test/sheets"标签的文件的列表中)和根目录中.如果您希望复制该文件,则应使用复制方法.(如果我误解了你的问题,请告诉我.)