【发布时间】:2017-01-11 18:28:32
【问题描述】:
我有一个包含 500,000 个文件及其路径的列表,我需要将它们移动到新目录但保留文件夹结构。
> head(list.of.files)
[1] "F:\\Client X/Geochem/all.txt"
[2] "F:\\Client X/Geochem/Rock Sample.xlsx"
[3] "F:\\Client X/Geochem/DataDump/2006 Humus Sampling/every5.txt"
>
我曾尝试使用 file.copy 来执行此操作,但所有文件都复制到单个目标文件夹而不保留子目录结构。我使用列表执行此操作的原因是我仅从原始文件夹中移动某些文件。我已经浏览了所有关于此的帖子,但似乎找不到适合这个特定问题的问题。我的最终文件夹结构应如下所示:
[1] "F:\\Client X Copy/Client X/Geochem/all.txt"
[2] "F:\\Client X Copy/Client X/Geochem/Rock Sample.xlsx"
[3] "F:\\Client X Copy/Client X/Geochem/DataDump/2006 Humus Sampling/every5.txt"
这是我使用的代码:
current.folder <- "F:\\Client X"
new.folder <- "F:\\Client X Copy"
list.of.files <- list.files(current.folder,full.names=TRUE, recursive = TRUE)
file.copy(list.of.files, new.folder)
任何建议将不胜感激!
【问题讨论】:
-
file.copy中的 recursive=TRUE 参数可能会起作用。 -
不,不幸的是,这些文件都被转储到根文件夹中并且不会创建子文件夹。
-
无赖。我不确定
dir.create中的 recursive=TRUE 参数有什么作用,但可能值得一试。 -
我也试过了。没运气。我被难住了。
-
感谢您的建议!我很感激。
标签: r