The functions file_create() and dir_create() ensure that path exists;
if it already exists it will be left unchanged. That means that compared to
file.create(), file_create() will not truncate an existing file, and
compared to dir.create(), dir_create() will silently ignore existing
directories.
Usage
file_create(path, ..., mode = "u=rw,go=r")
dir_create(path, ..., mode = "u=rwx,go=rx", recurse = TRUE, recursive)
link_create(path, new_path, symbolic = TRUE)Arguments
- path
A character vector of one or more paths. For
link_create(), this is the target.- ...
Additional arguments passed to
path()- mode
If file/directory is created, what mode should it have?
Links do not have mode; they inherit the mode of the file they link to.
- recurse
should intermediate directories be created if they do not exist?
- recursive
(Deprecated) If
TRUErecurse fully.- new_path
The path where the link should be created.
- symbolic
Boolean value determining if the link should be a symbolic (the default) or hard link.
Examples
file_create("foo")
is_file("foo")
#> foo
#> TRUE
# dir_create applied to the same path will fail
try(dir_create("foo"))
#> Error : [EEXIST] Failed to make directory 'foo': file already exists
dir_create("bar")
is_dir("bar")
#> bar
#> TRUE
# file_create applied to the same path will fail
try(file_create("bar"))
#> Error : [EISDIR] Failed to open 'bar': illegal operation on a directory
# Cleanup
file_delete("foo")
dir_delete("bar")
