64
votes

I am looking for the R equivalent of linux/POSIX exit(n) which will halt the process with exit code n, signaling to a parent process that an error had occurred. Does R have such a facility?

2
The builtin function quit( can take multiple different kinds of numeric arguments, so you have to be more explicit. Use: quit(status=3) and see stat.ethz.ch/R-manual/R-devel/library/base/html/quit.html - Eric Leschinski

2 Answers

72
votes

It's an argument to quit(). See ?quit.

Arguments:

status: the (numerical) error status to be returned to the operating
        system, where relevant.  Conventionally ‘0’ indicates
        successful completion.

Details:

 Some error statuses are used by R itself.  The default error
 handler for non-interactive use effectively calls ‘q("no", 1,
 FALSE)’ and returns error code 1.  Error status 2 is used for R
 ‘suicide’, that is a catastrophic failure, and other small numbers
 are used by specific ports for initialization failures.  It is
 recommended that users choose statuses of 10 or more.
5
votes
quit(status=1)

Replace 1 by whatever exit code you need.