shell {base}R Documentation

Invoke a System Command, using a Shell

Description

shell runs the command specified by cmd, usually under a shell.

Usage

shell(cmd, shell, flag = "/c", intern = FALSE, wait = TRUE,
      translate = FALSE, mustWork = FALSE, ...)

Arguments

cmd the system command to be invoked, as a string.
shell a string giving the name of the shell to be used, or NULL (no shell). If missing, a suitable shell is chosen: see ‘Details’.
flag the switch to run a command under the shell. If the shell is bash or tcsh the default is changed to "-c".
intern a logical, indicates whether to make the output of the command an R object.
wait should the R interpreter wait for the command to finish? The default is to wait, and the interpreter will always wait if intern = TRUE.
translate If TRUE, "/" in cmd is translated to "\".
mustWork a logical; if TRUE failure to run the command will give an R error.
... additional arguments to system.

Details

If no shell is specified, the environment variables R_SHELL, SHELL and COMSPEC are tried in turn: COMSPEC should always succeed. Using shell=NULL invokes the command cmd directly, in which case an extension of .exe is assumed. It is possible to use batch files directly if their extension is given: Windows (rather than R) then chooses a shell.

See system for fuller details: shell is a more user-friendly wrapper for system. To make use of Windows file associations, use shell.exec.

Value

If intern=TRUE, a character vector giving the output of the command, one line per character string, or an error message if the command could not be run.
If intern=FALSE, the return value is an error code, given the invisible attribute (so needs to be printed explicitly). If the command could not be run for any reason, the value is -1 and an R warning is generated. Otherwise if wait=FALSE the value is the error code returned by the command, and if wait=TRUE it is the zero (the conventional success value),
If intern=FALSE and wait=TRUE (the defaults) the text output from a command that is a console application will appear in the R console (Rgui) or the window running R (Rterm).

See Also

system, shell.exec


[Package base version 2.4.1 Index]