quit                  package:base                  R Documentation

Terminate an R Session

Description:

     The function `quit' or its alias `q' terminate the current R
     session.

Usage:

     quit(save = "default", status = 0, runLast = TRUE)
        q(save = "default", status = 0, runLast = TRUE)
     .Last <- function(x) { ...... }

Arguments:

    save: a character string indicating whether the environment
          (workspace) should be saved, one of `"no"', `"yes"', `"ask"'
          or `"default"'.

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

 runLast: should `.Last()' be executed?

Details:

     `save' must be one of `"no"', `"yes"', `"ask"' or `"default"'.  In
     the first case the workspace is not saved, in the second it is
     saved and in the third the user is prompted and can also decide
     not to quit.  The default is to ask in interactive use but may be
     overridden by command-line arguments (which must be supplied in
     non-interactive use).

     Immediately before terminating, the function `.Last()' is executed
     if it exists and `runLast' is true. If in interactive use there
     are errors in the `.Last' function, control will be returned to
     the command prompt, so do test the function thoroughly.

     Some error statuses are used by R itself.  The default error
     handler for non-interactive 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.

     Valid values of `status' are system-dependent, but `0:255' are
     normally valid.

See Also:

     `.First' for setting things on startup.

Examples:

     ## Unix-flavour example
     .Last <- function() {
       cat("Now sending PostScript graphics to the printer:\n")
       system("lpr Rplots.ps")
       cat("bye bye...\n")
     }
     quit("yes")

