Sys.which {base} | R Documentation |
This is an interface to the system command which
, or to an
emulation on Windows.
Sys.which(names)
names |
Character vector of names or paths of possible executables. |
The system command which
reports on the full path names of
an executable (including an executable script) as would be executed by
a shell, accepting either absolute paths or looking on the path.
On Windows an ‘executable’ is a file with extension
‘.exe’, ‘.com’, ‘.cmd’ or ‘.bat’. Such files need
not actually be executable, but they are what system
tries.
On a Unix-alike the full path to which
(usually
‘/usr/bin/which’) is found when R is installed.
Arguments containing spaces or other metacharacters need to be escaped as they would be for a shell: for example Windows paths containing spaces need to be enclosed in double quotes.
A character vector of the same length as names
, named by
names
. The elements are either the full path to the
executable or some indication that no executable of that name was
found. Typically the indication is ""
, but this does depend on
the OS (and the known exceptions are changed to ""
).
On Windows the paths will be short paths (8+3 components, no spaces)
with \
as the path delimiter.
Except on Windows this calls the system command which
: since
that is not part of e.g. the POSIX standards, exactly what it does is
OS-dependent. It will usually do tilde-expansion and it may make use
of csh
aliases.
## the first two are likely to exist everywhere ## texi2dvi exists on most Unix-alikes and under MiKTeX Sys.which(c("ftp", "ping", "texi2dvi", "this-does-not-exist"))