PUT new media into a Drive file
PUTs new media into a Drive file, in the HTTP sense: if the file already
exists, we replace its content and we create a new file, otherwise. This is a
convenience wrapper around drive_upload()
and drive_update()
. In
pseudo-code:
target_filepath <- <determined from `path`, `name`, and `media`> hits <- <get all Drive files at target_filepath> if (no hits) { drive_upload(media, path, name, type, ..., verbose) } else if (exactly 1 hit) { drive_update(hit, media, ..., verbose) } else { ERROR }
drive_put(media, path = NULL, name = NULL, ..., type = NULL, verbose = TRUE)
media |
Character, path to the local file to upload. |
path |
Specifies target destination for the new file on Google
Drive. Can be an actual path (character), a file id marked with |
name |
Character, new file name if not specified as part of
|
... |
Named parameters to pass along to the Drive API. Has the tidy dots
semantics that come from using |
type |
Character. If |
verbose |
Logical, indicating whether to print informative messages
(default |
An object of class dribble
, a tibble with one row per item.
## Not run: # create a local file to work with local_file <- tempfile("drive_put_", fileext = ".txt") writeLines(c("beginning", "middle"), local_file) # PUT to a novel filepath --> drive_put() delegates to drive_upload() file <- drive_put(local_file) # update the local file cat("end", file = local_file, sep = "\n", append = TRUE) # PUT again --> drive_put() delegates to drive_update() file <- drive_put(local_file) # create a second file at this filepath file2 <- drive_create(basename(local_file)) # PUT again --> ERROR drive_put(local_file) # clean-up drive_find("drive_put_.+[.]txt") %>% drive_rm() unlink(local_file) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.