根据存储在.txt文件中的列表复制文件

时间:2018-08-18 08:10:03

标签: r list copy

我有一个源文件夹 目标文件夹 我要从源文件夹复制到目标文件夹的文件列表,该文件已保存到.txt文件

listtocopy.txt如下-不确定是否重要,但是它们是Anabat ZC文件。

S5281925.35#
S5282317.26#
S5290100.39#
S5281859.28#
S5281932.18#
S5290420.20#

我不想复制所有文件。

我是R的新手-到目前为止,这是我所拥有的-但它不起作用。我认为它不能将列表识别为文件名的“列表”。

# Copy based on list
# identify the folders
current.folder <- "H:/Documents/1_PhD_Network/Auto_ID/Anabat7_11"
new.folder <- "H:/Documents/1_PhD_Network/Auto_ID/Scan_outputs"

#read listtocopy and assign to list
list<-read.delim("H:/Documents/1_PhD_Network/Auto_ID/Scan_outputs/listtocopy.txt")

# copy the files to the new folder
file.copy(list, new.folder)

2 个答案:

答案 0 :(得分:1)

我认为文本文件的读取方式存在问题?? 无论如何,这可行。感谢所有回答。

# identify the folders
current.folder <- "C:/Users/Amanda/Desktop/testcopy/Anabat7_11"
new.folder <- "C:/Users/Amanda/Desktop/testcopy/Scan_outputs"

# find the files that you want
list_of_files <- read.delim("listtocopy.txt",header = F) 

#check
print(list_of_files)

#copy vector
setwd(current.folder) 
for(i in list_of_files)
{
  file.copy(i, new.folder)
}

答案 1 :(得分:0)

您可以尝试以下操作:

setwd(current.folder) 
for(i in list_of_files)
{
file.copy(i, new.folder)
}

file.copy()不适用于矢量,这就是为什么必须使用for的原因。 如果list_of_files仅包含文件名而不包含路径(file.txt,file2.txt等),则可以使用setwd()