files                  package:base                  R Documentation

_F_i_l_e _M_a_n_i_p_u_l_a_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

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

_U_s_a_g_e:

     file.create(..., showWarnings = TRUE)
     file.exists(...)
     file.remove(...)
     file.rename(from, to)
     file.append(file1, file2)
     file.copy(from, to, overwrite = recursive, recursive = FALSE)
     file.symlink(from, to)

_A_r_g_u_m_e_n_t_s:

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

overwrite: logical; should the destination files be overwritten?

showWarnings: logical; should the warnings on failure be shown?

recursive: logical. If 'to' is a directory, should directories in
          'from' be copied (and their contents).

_D_e_t_a_i_l_s:

     The '...' arguments are concatenated to form one character string:
     you can specify the files separately or as one vector. All of
     these functions expand path names: see 'path.expand'.

     'file.create' creates files with the given names if they do not
     already exist and truncates them if they do.  They are created
     with the maximal permissions allowed by the 'umask' setting.

     'file.exists' returns a logical vector indicating whether the
     files named by its argument exist.  (Here 'exists' is in the sense
     of the system's 'stat' call: a file will be reported as existing
     only if you have the permissions needed by 'stat'. Existence can
     also be checked by 'file.access', which might use different
     permissions and so obtain a different result. Note that the
     existence of a file does not imply that it is readable: for that
     use 'file.access'.) Note that if the file is a symbolic link, the
     result indicates if the libk points to an actual file, not just if
     the link exists.

     'file.remove' attempts to remove the files named in its argument.
     On most platforms 'file' includes _empty_ directories, symbolic
     links, fifos and sockets.

     'file.rename' attempts to rename a single file.

     '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.

     'file.symlink' makes symbolic links on those Unix-like platforms
     which support them.  The 'to' argument can specify a single
     existing directory.

_V_a_l_u_e:

     'file.rename' returns a logical value, true for success.

     The remaining functions return a logical vector indicating which
     operation succeeded for each of the files attempted.  Using a
     missing value for a file or path name will always be regarded as a
     failure.

     If 'showWarnings = TRUE', 'file.create' will give a warning for an
     unexpected failure.

_A_u_t_h_o_r(_s):

     Ross Ihaka, Brian Ripley

_S_e_e _A_l_s_o:

     'file.info', 'file.access', 'file.path', 'file.show',
     'list.files', 'unlink', 'basename', 'path.expand'.

     'dir.create'.

     'Sys.glob' to expand wildcards in file specifications.

     'file_test'.

_E_x_a_m_p_l_e_s:

     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")
     list.files("tmp")
     setwd("tmp")
     file.remove("B")
     file.symlink(file.path("..", c("A", "B")), ".")
     setwd("..")
     unlink("tmp", recursive=TRUE)
     file.remove("A", "B", "C")

