Last chance! 50% off unlimited learning
Sale ends in
Copies an existing Drive file into a new file id.
drive_cp(file, path = NULL, name = NULL, ..., verbose = TRUE)
Specifies target destination for the new file on Google
Drive. Can be an actual path (character), a file id marked with
as_id()
, or a dribble
. If specified as an
actual path, it is best to explicitly indicate if it's a folder by
including a trailing slash, since it cannot always be worked out from the
context of the call. Defaults to "Copy of FILE-NAME
".
Character, new file name if not specified as part of
path
. This will force path
to be treated as a folder, even if
it is character and lacks a trailing slash. Defaults to "Copy of FILE-NAME
".
Named parameters to pass along to the Drive API. You can affect
the metadata of the target file by specifying properties of the Files
resource via ...
. See the "Request body" section of the Drive API
docs for the associated endpoint.
Logical, indicating whether to print informative messages
(default TRUE
).
An object of class dribble
, a tibble with one row per
item.
Wraps the files.copy
endpoint:
# NOT RUN {
## Create a file to copy
file <- drive_upload(drive_example("chicken.txt"), "chicken-cp.txt")
## Make a "Copy of" copy in same folder as the original
drive_cp("chicken-cp.txt")
## Make an explicitly named copy in same folder as the original
drive_cp("chicken-cp.txt", "chicken-cp-two.txt")
## Make an explicitly named copy in a different folder
folder <- drive_mkdir("new-folder")
drive_cp("chicken-cp.txt", path = folder, name = "chicken-cp-three.txt")
## Make an explicitly named copy and star it.
## The starring is an example of providing metadata via `...`.
## `starred` is not an actual argument to `drive_cp()`,
## it just gets passed through to the API.
drive_cp("chicken-cp.txt", name = "chicken-cp-starred.txt", starred = TRUE)
## Behold all of our copies!
drive_find("chicken-cp")
## Delete all of our copies and the new folder!
drive_find("chicken-cp") %>% drive_rm()
drive_rm(folder)
## upload a csv file to copy
csv_file <- drive_upload(drive_example("chicken.csv"))
## copy AND AT THE SAME TIME convert it to a Google Sheet
chicken_sheet <- drive_cp(
csv_file,
name = "chicken-cp",
mime_type = drive_mime_type("spreadsheet")
)
## go see the new Sheet in the browser
## drive_browse(chicken_sheet)
## clean up
drive_rm(csv_file, chicken_sheet)
# }
Run the code above in your browser using DataLab