files                  package:base                  R Documentation

File Manipulation

Description:

     These functions provide a low-level interface to the computer's
     file system.

Usage:

     file.create(...)
     file.exists(...)
     file.remove(...)
     file.rename(from, to)
     file.append(file1, file2)
     file.copy(from, to, overwrite = FALSE)
     dir.create(path)
     basename(path)
     dirname(path)
     path.expand(path)

Arguments:

..., file1, file2, from, to, path: character vectors, containing file
          names.

overwrite: logical; should the destination files be overwritten?

Details:

     The `...' arguments are concatenated to form one character string:
     you can specify the files separately or as one vector.

     `file.create' creates files with the given names if they do not
     already exist and truncates them if they do. It returns a logical
     vector indicating the success or failure of the operation for each
     file.

     `file.exists' returns a logical vector indicating whether the
     files named by its argument exist.

     `file.remove' attempts to remove the files named in its argument. 
     It returns a logical vector indicating whether or not it succeeded
     in removing each file.

     `file.rename' attempts to rename a file.  It returns a logical
     value indicating whether the operation succeeded.

     `file.append' attempts to append the files named by its second
     argument to those named by its first.  The R subscript recycling
     rule is used to align names given in vectors of different lengths.

     `file.copy' works in a similar way to `file.append' but with the
     arguments in the natural order for copying. Copying to existing
     destination files is skipped unless `overwrite = TRUE'. The `to'
     argument can specify a single existing directory.

     `dir.create' creates the last element of the path. It returns a
     logical, true for success.

     `basename' removes all of the path up to the last path separator
     (if any).

     `dirname' returns the part of the `path' up to (but excluding) the
     last path separator, or `"."' if there is no path separator. 
     Tilde expansion is done: see the description for `path.expand'
     below.

     In both `basename' and `dirname' trailing file separators are
     removed before dissecting the path, and for `dirname' any trailing
     file separators are removed from the result.

     `path.expand' expands path(s) by replacing a leading tilde by the
     user's home directory (if defined on that platform). On some Unix
     versions, a leading `~user' will expand to the home directory of
     `user', but not on Unix versions without `readline' installed.

Author(s):

     Ross Ihaka, Brian Ripley

See Also:

     `file.info', `file.access', `file.path', `file.show',
     `list.files', `unlink'.

Examples:

     cat("file A\n", file="A")
     cat("file B\n", file="B")
     file.append("A", "B")
     file.create("A")
     file.append("A", rep("B", 10))
     if(interactive()) file.show("A")
     file.copy("A", "C")
     dir.create("tmp")
     file.copy(c("A", "B"), "tmp")
     unlink("tmp", recursive=TRUE)
     file.remove("A", "B", "C")

     basename(file.path("","p1","p2","p3","filename"))
     dirname(file.path("","p1","p2","p3","filename"))

     path.expand("~/foo")

