1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Quitting Octave (GNU Octave (version 7.3.0))</title>
<meta name="description" content="Quitting Octave (GNU Octave (version 7.3.0))">
<meta name="keywords" content="Quitting Octave (GNU Octave (version 7.3.0))">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="index.html" rel="start" title="Top">
<link href="Concept-Index.html" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Getting-Started.html" rel="up" title="Getting Started">
<link href="Getting-Help.html" rel="next" title="Getting Help">
<link href="Invoking-Octave-from-the-Command-Line.html" rel="prev" title="Invoking Octave from the Command Line">
<style type="text/css">
<!--
a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em}
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
span:hover a.copiable-anchor {visibility: visible}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="octave.css">
</head>
<body lang="en">
<div class="section" id="Quitting-Octave">
<div class="header">
<p>
Next: <a href="Getting-Help.html" accesskey="n" rel="next">Commands for Getting Help</a>, Previous: <a href="Invoking-Octave-from-the-Command-Line.html" accesskey="p" rel="prev">Invoking Octave from the Command Line</a>, Up: <a href="Getting-Started.html" accesskey="u" rel="up">Getting Started</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<span id="Quitting-Octave-1"></span><h3 class="section">2.2 Quitting Octave</h3>
<span id="index-exiting-octave-1"></span>
<span id="index-quitting-octave-1"></span>
<span id="index-finish_002em"></span>
<span id="index-site-exiting-file"></span>
<p>Shutdown is initiated with the <code>exit</code> or <code>quit</code> commands (they are
equivalent). Similar to startup, Octave has a shutdown process that can be
customized by user script files. During shutdown Octave will search for the
script file <samp>finish.m</samp> in the function load path. Commands to save all
workspace variables or cleanup temporary files may be placed there. Additional
functions to execute on shutdown may be registered with <code>atexit</code>.
</p>
<span id="XREFquit"></span><dl class="def">
<dt id="index-quit"><span class="category">: </span><span><em></em> <strong>quit</strong><a href='#index-quit' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-1"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>cancel</em><a href='#index-quit-1' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-2"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>force</em><a href='#index-quit-2' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-3"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>("cancel")</em><a href='#index-quit-3' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-4"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>("force")</em><a href='#index-quit-4' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-5"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>(<var>status</var>)</em><a href='#index-quit-5' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-quit-6"><span class="category">: </span><span><em></em> <strong>quit</strong> <em>(<var>status</var>, "force")</em><a href='#index-quit-6' class='copiable-anchor'> ¶</a></span></dt>
<dd><p>Quit the current Octave session.
</p>
<p>The <code>exit</code> function is an alias for <code>quit</code>.
</p>
<p>If the optional integer value <var>status</var> is supplied, pass that value to
the operating system as Octave’s exit status. The default value is zero.
</p>
<p>When exiting, Octave will attempt to run the m-file <samp>finish.m</samp> if it
exists. User commands to save the workspace or clean up temporary files
may be placed in that file. Alternatively, another m-file may be scheduled
to run using <code>atexit</code>. If an error occurs while executing the
<samp>finish.m</samp> file, Octave does not exit and control is returned to
the command prompt.
</p>
<p>If the optional argument <code>"cancel"</code> is provided, Octave does not
exit and control is returned to the command prompt. This feature allows
the <code>finish.m</code> file to cancel the quit process.
</p>
<p>If the user preference to request confirmation before exiting, Octave
will display a dialog and give the user an option to cancel the exit
process.
</p>
<p>If the optional argument <code>"force"</code> is provided, no confirmation is
requested, and the execution of the <samp>finish.m</samp> file is skipped.
</p>
<p><strong>See also:</strong> <a href="#XREFatexit">atexit</a>.
</p></dd></dl>
<span id="XREFatexit"></span><dl class="def">
<dt id="index-atexit"><span class="category">: </span><span><em></em> <strong>atexit</strong> <em>(<var>fcn</var>)</em><a href='#index-atexit' class='copiable-anchor'> ¶</a></span></dt>
<dt id="index-atexit-1"><span class="category">: </span><span><em></em> <strong>atexit</strong> <em>(<var>fcn</var>, <var>flag</var>)</em><a href='#index-atexit-1' class='copiable-anchor'> ¶</a></span></dt>
<dd><p>Register a function to be called when Octave exits.
</p>
<p>For example,
</p>
<div class="example">
<pre class="example">function last_words ()
disp ("Bye bye");
endfunction
atexit ("last_words");
</pre></div>
<p>will print the message <code>"Bye bye"</code> when Octave exits.
</p>
<p>The additional argument <var>flag</var> will register or unregister <var>fcn</var>
from the list of functions to be called when Octave exits. If <var>flag</var> is
true, the function is registered, and if <var>flag</var> is false, it is
unregistered. For example, after registering the function <code>last_words</code>
above,
</p>
<div class="example">
<pre class="example">atexit ("last_words", false);
</pre></div>
<p>will remove the function from the list and Octave will not call
<code>last_words</code> when it exits.
</p>
<p>Note that <code>atexit</code> only removes the first occurrence of a function
from the list, so if a function was placed in the list multiple times with
<code>atexit</code>, it must also be removed from the list multiple times.
</p>
<p><strong>See also:</strong> <a href="#XREFquit">quit</a>.
</p></dd></dl>
</div>
<hr>
<div class="header">
<p>
Next: <a href="Getting-Help.html">Commands for Getting Help</a>, Previous: <a href="Invoking-Octave-from-the-Command-Line.html">Invoking Octave from the Command Line</a>, Up: <a href="Getting-Started.html">Getting Started</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|