sys.source {base} | R Documentation |
Parses expressions in the given file, and then successively evaluates them in the specified environment.
sys.source(file, envir = baseenv(), chdir = FALSE, keep.source = getOption("keep.source.pkgs"))
file |
a character string naming the file to be read from |
envir |
an R object specifying the environment in which the
expressions are to be evaluated. May also be a list or an integer.
The default value NULL corresponds to evaluation in the base
environment. This is probably not what you want; you should
typically supply an explicit envir argument. |
chdir |
logical; if TRUE , the R working directory is
changed to the directory containing file for evaluating. |
keep.source |
logical. If TRUE , functions keep
their source including comments, see
options(keep.source = *) for more details. |
For large files, keep.source = FALSE
may save quite a bit of
memory.
In order for the code being evaluated to use the correct environment
(for example, in global assignments), source code in packages should
call
topenv()
, which will return the name space, if any, the
environment set up by sys.source
, or the global environment
if a saved image is being used.
source
, and library
which uses
sys.source
.
## a simple way to put some objects in an environment ## high on the search path tmp <- tempfile() writeLines("aaa <- pi", tmp) env <- attach(NULL, name = "myenv") sys.source(tmp, env) unlink(tmp) search() aaa detach("myenv")