В зависимости от того, как вы собираетесь передать параметр to
в функцию, мы можем использовать один из них.
1) Если вы собираетесь передать to
только с именем каталога и ожидать егочтобы взять имя файла из аргумента from
, мы можем использовать следующую функцию
my.file.copy_dir <- function(from, to, ...) {
if (!dir.exists(to)) dir.create(to, recursive = TRUE)
file.copy(from = from, to = paste0(to, basename(from)), ...)
}
2) Если вы собираетесь передать to
как полный путь к новому имени файла, мы можем использовать
my.file.copy_file <- function(from, to, ...) {
if (!dir.exists(dirname(to))) dir.create(dirname(to), recursive = TRUE)
file.copy(from = from, to = to, ...)
}
и используйте их как:
my.file.copy_dir("/path/of/file/report.pdf", "/new/path/of/file/")
и
my.file.copy_file("/path/of/file/report.pdf", "/new/path/of/file/abc.pdf")