我正在尝试通过函数调用进行标准化的目录设置。在此函数内部,我使用两个file.copy
调用将一些文件从自制包复制到项目的工作目录中。
如果我逐行运行代码,那么一切都很好,但是如果运行整个函数,则仅创建目录,而不会复制文件。不幸的是,该功能没有引发任何错误,因此我真的不了解发生了什么或从哪里开始进行故障排除。
也许你们中的一个可以给我提示哪里可以找到解决方案。
抽象(无效)示例:
dir_setup <- function() {
# list directories which shall be created
dir_names <- c("dir1", "dir2", "dir3", "dir4")
# create directories
lapply(dir_names, function(x){dir.create(path = paste(getwd(), x, sep = '/'))})
# get path of package library
lib_path <- .libPaths()
# shorten list to vector of length 1
if (length(lib_path) > 1) lib_path = lib_path[1]
# list files in source
files <- list.files(paste0(lib_path, "/package/files/dir1"), full.names = TRUE)
# copy resource files from package directory to working directory
file.copy(files, paste(getwd(), "dir1", sep = '/'), overwrite = TRUE)
# list more files
files2 <- list.files(paste0(lib_path, "/package/files/dir2"), full.names = TRUE)
# copy more files from package directory to working directory
file.copy(files2, paste(getwd(), "dir2", sep = '/'), overwrite = TRUE)
}