Creates a new Drive folder. To update the metadata of an existing Drive file,
including a folder, use drive_update()
.
drive_mkdir(name, path = NULL, ..., overwrite = NA, verbose = deprecated())
Name for the new folder or, optionally, a path that specifies an existing parent folder, as well as the new name.
Named parameters to pass along to the Drive API. Has dynamic dots semantics. You can affect the metadata of the target file by
specifying properties of the Files resource via ...
. Read the "Request
body" section of the Drive API docs for the associated endpoint to learn
about relevant parameters.
Logical, indicating whether to check for a pre-existing file
at the targetted "filepath". The quotes around "filepath" refer to the fact
that Drive does not impose a 1-to-1 relationship between filepaths and files,
like a typical file system; read more about that in drive_get()
.
NA
(default): Just do the operation, even if it results in multiple
files with the same filepath.
TRUE
: Check for a pre-existing file at the filepath. If there is
zero or one, move a pre-existing file to the trash, then carry on. Note
that the new file does not inherit any properties from the old one, such
as sharing or publishing settings. It will have a new file ID. An error is
thrown if two or more pre-existing files are found.
FALSE
: Error if there is any pre-existing file at the filepath.
Note that existence checks, based on filepath, are expensive operations, i.e. they require additional API calls.
This logical argument to
individual googledrive functions is deprecated. To globally suppress
googledrive messaging, use
options(googledrive_quiet = TRUE)
(the default
behaviour is to emit informational messages). To suppress messaging in a
more limited way, use the helpers local_drive_quiet()
or
with_drive_quiet()
.
An object of class dribble
, a tibble with one row per file.
Wraps the files.create
endpoint:
# NOT RUN {
# Create folder named 'ghi', then another below named it 'jkl' and star it
ghi <- drive_mkdir("ghi")
jkl <- drive_mkdir("ghi/jkl", starred = TRUE)
# is 'jkl' really starred? YES
purrr::pluck(jkl, "drive_resource", 1, "starred")
# Another way to create folder 'mno' in folder 'ghi'
drive_mkdir("mno", path = "ghi")
# Yet another way to create a folder named 'pqr' in folder 'ghi',
# this time with parent folder stored in a dribble,
# and setting the new folder's description
pqr <- drive_mkdir("pqr", path = ghi, description = "I am a folder")
# Did we really set the description? YES
purrr::pluck(pqr, "drive_resource", 1, "description")
# `overwrite = FALSE` errors if something already exists at target filepath
# THIS WILL ERROR!
drive_create("name-squatter", path = ghi)
drive_mkdir("name-squatter", path = ghi, overwrite = FALSE)
# `overwrite = TRUE` moves the existing item to trash, then proceeds
drive_mkdir("name-squatter", path = ghi, overwrite = TRUE)
# list everything inside 'ghi'
drive_ls('ghi')
# clean up
drive_rm(ghi)
# }
Run the code above in your browser using DataLab