files2 {base}
Description
These functions provide a low-level interface to the computer's file system.
Usage
dir.create(path, showWarnings = TRUE, recursive = FALSE, mode = "0777") Sys.chmod(paths, mode = "0777", use_umask = TRUE) Sys.umask(mode = NA)
Arguments
- path
- a character vector containing a single path name. Tilde expansion (see
path.expand) is done. - paths
- character vectors containing file or directory paths. Tilde expansion (see
path.expand) is done. - showWarnings
- logical; should the warnings on failure be shown?
- recursive
- logical. Should elements of the path other than the last be created? If true, like the Unix command
mkdir -p. - mode
- the mode to be used on Unix-alikes: it will be coerced by
as.octmode. ForSys.chmodit is recycled alongpaths. - use_umask
- logical: should the mode be restricted by the
umasksetting?
Details
dir.create creates the last element of the path, unless recursive = TRUE. Trailing path separators are discarded. One of the idiosyncrasies of Windows is that directory creation may report success but create a directory with a different name, for example dir.create("G.S.") creates ‘"G.S"’. This is undocumented, and what are the precise circumstances is unknown (and might depend on the version of Windows). Also avoid directory names with a trailing space. Sys.chmod sets the file permissions of one or more files. Sys.umask sets the umask and returns the previous value: as a special case mode = NA just returns the current value.
How modes are handled depends on the file system, even on Unix-alikes (although their documentation is often written assuming a POSIX file system). So treat documentation cautiously if you are using, say, a FAT/FAT32 or network-mounted file system.
Values
dir.create and Sys.chmod return invisibly a logical vector indicating if the operation succeeded for each of the files attempted. Using a missing value for a path name will always be regarded as a failure. dir.create indicates failure if the directory already exists. If showWarnings = TRUE, dir.create will give a warning for an unexpected failure (e.g. not for a missing value nor for an already existing component for recursive = TRUE).
Sys.umask returns the previous value of the umask, as a length-one object of class "octmode": the visibility flag is off unless mode is NA. See also the section in the help for file.exists on case-insensitive file systems for the interpretation of path and paths.
See Also
file.info, file.exists, file.path, list.files, unlink, basename, path.expand.
Examples
## Not run: ## Fix up maximal allowed permissions in a file tree Sys.chmod(list.dirs("."), "777") f <- list.files(".", all.files = TRUE, full.names = TRUE, recursive TRUE) Sys.chmod(f, (file.info(f)$mode | "664")) ## End(Not run)
Documentation reproduced from R 2.15.3. License: GPL-2.
