【问题标题】:How to copy multiple files from multiple folders (each in one folder) to another folder?如何将多个文件从多个文件夹(每个文件夹中)复制到另一个文件夹?
【发布时间】:2018-08-06 18:54:21
【问题描述】:

我正在尝试将位于一个单独文件夹(名为 IMG_somethingsomething)中的 .jpg 文件 (Windows) 移动到另一个文件夹,以便我可以轻松地查看照片。我尝试使用从类似问题中看到的代码,但它不起作用......

my_dirs 列出文件所在的正确目录,文件列出.jpg,每个名称下都有character(0)。不确定这应该发生什么?新文件夹已正确创建,但没有复制任何内容。

my_dirs <- list.files("almond blossom", pattern = "IMG*", recursive = TRUE, include.dirs = TRUE)

my_dirs

files <- sapply(my_dirs, list.files, full.names = TRUE)

files

# Your output directory to copy files to
new_dir <- "all.files"

# Make sure the directory exists
dir.create(new_dir, recursive = TRUE)


# Copy the files
for(file in files) {
 file.copy(file, new_dir, copy.mode = TRUE)
}

【问题讨论】:

    标签: r copy move


    【解决方案1】:

    您在循环中遗漏了一些要点。你必须从1:length(files)写信:

    for(file in 1:length(files)) {
        file.copy(files[file], new_dir, copy.mode = TRUE)
    }
    

    如果您已经知道您的模式是 jpeg 文件,我会在您的第一行更改 .jpg 的模式。

    除了你,我会跳过你代码的第 3 行。

    然后我会做这样的事情:

    my_dirs <- list.files("almond blossom", pattern = ".jpg", recursive = TRUE, include.dirs = TRUE)
    
    new_dir <- "all.files"
    
    dir.create(new_dir, recursive = TRUE)
    
    for(file in 1:length(my_dirs)) {
        file.copy(my_dirs[i], new_dir, copy.mode = TRUE)
    }
    

    希望这行得通!

    【讨论】:

      最近更新 更多