<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://gunkies.org/index.php?action=history&amp;feed=atom&amp;title=32v_1m_sh</id>
		<title>32v 1m sh - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://gunkies.org/index.php?action=history&amp;feed=atom&amp;title=32v_1m_sh"/>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=32v_1m_sh&amp;action=history"/>
		<updated>2026-05-06T02:20:07Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.1</generator>

	<entry>
		<id>https://gunkies.org/w/index.php?title=32v_1m_sh&amp;diff=7022&amp;oldid=prev</id>
		<title>Neozeed: New page: SH(1)               UNIX Programmer's Manual                SH(1)    == NAME ==      sh, for, case, if, while, :, ., break, continue, cd, eval,      exec, exit, export, login, newgrp, read...</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=32v_1m_sh&amp;diff=7022&amp;oldid=prev"/>
				<updated>2009-10-26T15:45:31Z</updated>
		
		<summary type="html">&lt;p&gt;New page: SH(1)               UNIX Programmer&amp;#039;s Manual                SH(1)    == NAME ==      sh, for, case, if, while, :, ., break, continue, cd, eval,      exec, exit, export, login, newgrp, read...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;SH(1)               UNIX Programmer's Manual                SH(1)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== NAME ==&lt;br /&gt;
     sh, for, case, if, while, :, ., break, continue, cd, eval,&lt;br /&gt;
     exec, exit, export, login, newgrp, read, readonly, set,&lt;br /&gt;
     shift, times, trap, umask, wait - command language&lt;br /&gt;
&lt;br /&gt;
== SYNOPSIS ==&lt;br /&gt;
     sh [ -ceiknrstuvx ] [ arg ] ...&lt;br /&gt;
&lt;br /&gt;
== DESCRIPTION ==&lt;br /&gt;
     _S_h is a command programming language that executes commands&lt;br /&gt;
     read from a terminal or a file.  See invocation for the&lt;br /&gt;
     meaning of arguments to the shell.&lt;br /&gt;
&lt;br /&gt;
     Commands.&lt;br /&gt;
     A _s_i_m_p_l_e-_c_o_m_m_a_n_d is a sequence of non blank _w_o_r_d_s separated&lt;br /&gt;
     by blanks (a blank is a tab or a space).  The first word&lt;br /&gt;
     specifies the name of the command to be executed.  Except as&lt;br /&gt;
     specified below the remaining words are passed as arguments&lt;br /&gt;
     to the invoked command.  The command name is passed as argu-&lt;br /&gt;
     ment 0 (see _e_x_e_c(2)).  The _v_a_l_u_e of a simple-command is its&lt;br /&gt;
     exit status if it terminates normally or 200+_s_t_a_t_u_s if it&lt;br /&gt;
     terminates abnormally (see _s_i_g_n_a_l(2) for a list of status&lt;br /&gt;
     values).&lt;br /&gt;
&lt;br /&gt;
     A _p_i_p_e_l_i_n_e is a sequence of one or more _c_o_m_m_a_n_d_s separated&lt;br /&gt;
     by |. The standard output of each command but the last is&lt;br /&gt;
     connected by a _p_i_p_e(2) to the standard input of the next&lt;br /&gt;
     command.  Each command is run as a separate process; the&lt;br /&gt;
     shell waits for the last command to terminate.&lt;br /&gt;
&lt;br /&gt;
     A _l_i_s_t is a sequence of one or more _p_i_p_e_l_i_n_e_s separated by&lt;br /&gt;
     ;, &amp;amp;, &amp;amp;&amp;amp; or || and optionally terminated by ; or &amp;amp;.  ; and &amp;amp;&lt;br /&gt;
     have equal precedence which is lower than that of &amp;amp;&amp;amp; and ||,&lt;br /&gt;
     &amp;amp;&amp;amp; and || also have equal precedence.  A semicolon causes&lt;br /&gt;
     sequential execution; an ampersand causes the preceding&lt;br /&gt;
     _p_i_p_e_l_i_n_e to be executed without waiting for it to finish.&lt;br /&gt;
     The symbol &amp;amp;&amp;amp; (||) causes the _l_i_s_t following to be executed&lt;br /&gt;
     only if the preceding _p_i_p_e_l_i_n_e returns a zero (non zero)&lt;br /&gt;
     value.  Newlines may appear in a _l_i_s_t, instead of semi-&lt;br /&gt;
     colons, to delimit commands.&lt;br /&gt;
&lt;br /&gt;
     A _c_o_m_m_a_n_d is either a simple-command or one of the follow-&lt;br /&gt;
     ing.  The value returned by a command is that of the last&lt;br /&gt;
     simple-command executed in the command.&lt;br /&gt;
&lt;br /&gt;
     for _n_a_m_e [in _w_o_r_d ...] do _l_i_s_t done&lt;br /&gt;
          Each time a for command is executed _n_a_m_e is set to the&lt;br /&gt;
          next word in the for word list If in _w_o_r_d ...  is omit-&lt;br /&gt;
          ted then in &amp;quot;$@&amp;quot; is assumed.  Execution ends when there&lt;br /&gt;
          are no more words in the list.&lt;br /&gt;
&lt;br /&gt;
     case _w_o_r_d in [_p_a_t_t_e_r_n [ | _p_a_t_t_e_r_n ] ... ) _l_i_s_t ;;] ... esac&lt;br /&gt;
&lt;br /&gt;
          A case command executes the _l_i_s_t associated with the&lt;br /&gt;
          first pattern that matches _w_o_r_d. The form of the pat-&lt;br /&gt;
          terns is the same as that used for file name genera-&lt;br /&gt;
          tion.&lt;br /&gt;
&lt;br /&gt;
     if _l_i_s_t then _l_i_s_t [elif _l_i_s_t then _l_i_s_t] ... [else _l_i_s_t] fi&lt;br /&gt;
          The _l_i_s_t following if is executed and if it returns&lt;br /&gt;
          zero the _l_i_s_t following then is executed.  Otherwise,&lt;br /&gt;
          the _l_i_s_t following elif is executed and if its value is&lt;br /&gt;
          zero the _l_i_s_t following then is executed.  Failing that&lt;br /&gt;
          the else _l_i_s_t is executed.&lt;br /&gt;
&lt;br /&gt;
     while _l_i_s_t [do _l_i_s_t] done&lt;br /&gt;
          A while command repeatedly executes the while _l_i_s_t and&lt;br /&gt;
          if its value is zero executes the do _l_i_s_t; otherwise&lt;br /&gt;
          the loop terminates.  The value returned by a while&lt;br /&gt;
          command is that of the last executed command in the do&lt;br /&gt;
          _l_i_s_t. until may be used in place of while to negate the&lt;br /&gt;
          loop termination test.&lt;br /&gt;
&lt;br /&gt;
     ( _l_i_s_t )&lt;br /&gt;
          Execute _l_i_s_t in a subshell.&lt;br /&gt;
&lt;br /&gt;
     { _l_i_s_t }&lt;br /&gt;
          _l_i_s_t is simply executed.&lt;br /&gt;
&lt;br /&gt;
     The following words are only recognized as the first word of&lt;br /&gt;
     a command and when not quoted.&lt;br /&gt;
&lt;br /&gt;
          if then else elif fi case in esac for while until do&lt;br /&gt;
          done { }&lt;br /&gt;
&lt;br /&gt;
     Command substitution.&lt;br /&gt;
     The standard output from a command enclosed in a pair of&lt;br /&gt;
     grave accents (``) may be used as part or all of a word;&lt;br /&gt;
     trailing newlines are removed.&lt;br /&gt;
&lt;br /&gt;
     Parameter substitution.&lt;br /&gt;
     The character $ is used to introduce substitutable parame-&lt;br /&gt;
     ters.  Positional parameters may be assigned values by set.&lt;br /&gt;
     Variables may be set by writing&lt;br /&gt;
&lt;br /&gt;
          _n_a_m_e=_v_a_l_u_e [ _n_a_m_e=_v_a_l_u_e ] ...&lt;br /&gt;
&lt;br /&gt;
     ${_p_a_r_a_m_e_t_e_r}&lt;br /&gt;
          A _p_a_r_a_m_e_t_e_r is a sequence of letters, digits or under-&lt;br /&gt;
          scores (a _n_a_m_e), a digit, or any of the characters * @&lt;br /&gt;
          # ? - $ !.  The value, if any, of the parameter is sub-&lt;br /&gt;
          stituted.  The braces are required only when _p_a_r_a_m_e_t_e_r&lt;br /&gt;
          is followed by a letter, digit, or underscore that is&lt;br /&gt;
          not to be interpreted as part of its name.  If _p_a_r_a_m_e_-&lt;br /&gt;
          _t_e_r is a digit then it is a positional parameter.  If&lt;br /&gt;
          _p_a_r_a_m_e_t_e_r is * or @ then all the positional parameters,&lt;br /&gt;
          starting with $1, are substituted separated by spaces.&lt;br /&gt;
          $0 is set from argument zero when the shell is invoked.&lt;br /&gt;
&lt;br /&gt;
     ${_p_a_r_a_m_e_t_e_r-_w_o_r_d}&lt;br /&gt;
          If _p_a_r_a_m_e_t_e_r is set then substitute its value; other-&lt;br /&gt;
          wise substitute _w_o_r_d.&lt;br /&gt;
&lt;br /&gt;
     ${_p_a_r_a_m_e_t_e_r=_w_o_r_d}&lt;br /&gt;
          If _p_a_r_a_m_e_t_e_r is not set then set it to _w_o_r_d; the value&lt;br /&gt;
          of the parameter is then substituted.  Positional&lt;br /&gt;
          parameters may not be assigned to in this way.&lt;br /&gt;
&lt;br /&gt;
     ${_p_a_r_a_m_e_t_e_r?_w_o_r_d}&lt;br /&gt;
          If _p_a_r_a_m_e_t_e_r is set then substitute its value; other-&lt;br /&gt;
          wise, print _w_o_r_d and exit from the shell.  If _w_o_r_d is&lt;br /&gt;
          omitted then a standard message is printed.&lt;br /&gt;
&lt;br /&gt;
     ${_p_a_r_a_m_e_t_e_r+_w_o_r_d}&lt;br /&gt;
          If _p_a_r_a_m_e_t_e_r is set then substitute _w_o_r_d; otherwise&lt;br /&gt;
          substitute nothing.&lt;br /&gt;
&lt;br /&gt;
     In the above _w_o_r_d is not evaluated unless it is to be used&lt;br /&gt;
     as the substituted string.  (So that, for example, echo&lt;br /&gt;
     ${d-`pwd`} will only execute _p_w_d if _d is unset.)&lt;br /&gt;
&lt;br /&gt;
     The following _p_a_r_a_m_e_t_e_r_s are automatically set by the shell.&lt;br /&gt;
&lt;br /&gt;
          #    The number of positional parameters in decimal.&lt;br /&gt;
          -    Options supplied to the shell on invocation or by&lt;br /&gt;
               set.&lt;br /&gt;
          ?    The value returned by the last executed command in&lt;br /&gt;
               decimal.&lt;br /&gt;
          $    The process number of this shell.&lt;br /&gt;
          !    The process number of the last background command&lt;br /&gt;
               invoked.&lt;br /&gt;
&lt;br /&gt;
     The following _p_a_r_a_m_e_t_e_r_s are used but not set by the shell.&lt;br /&gt;
&lt;br /&gt;
          HOME The default argument (home directory) for the cd&lt;br /&gt;
               command.&lt;br /&gt;
          PATH The search path for commands (see execution).&lt;br /&gt;
          MAIL If this variable is set to the name of a mail file&lt;br /&gt;
               then the shell informs the user of the arrival of&lt;br /&gt;
               mail in the specified file.&lt;br /&gt;
          PS1  Primary prompt string, by default `$ '.&lt;br /&gt;
          PS2  Secondary prompt string, by default `&amp;gt; '.&lt;br /&gt;
          IFS  Internal field separators, normally space, tab,&lt;br /&gt;
               and newline.&lt;br /&gt;
&lt;br /&gt;
     Blank interpretation.&lt;br /&gt;
     After parameter and command substitution, any results of&lt;br /&gt;
     substitution are scanned for internal field separator char-&lt;br /&gt;
     acters (those found in $IFS) and split into distinct argu-&lt;br /&gt;
     ments where such characters are found.  Explicit null argu-&lt;br /&gt;
     ments (&amp;quot;&amp;quot; or '') are retained.  Implicit null arguments&lt;br /&gt;
     (those resulting from _p_a_r_a_m_e_t_e_r_s that have no values) are&lt;br /&gt;
     removed.&lt;br /&gt;
&lt;br /&gt;
     File name generation.&lt;br /&gt;
     Following substitution, each command word is scanned for the&lt;br /&gt;
     characters *, ? and [. If one of these characters appears&lt;br /&gt;
     then the word is regarded as a pattern.  The word is&lt;br /&gt;
     replaced with alphabetically sorted file names that match&lt;br /&gt;
     the pattern.  If no file name is found that matches the pat-&lt;br /&gt;
     tern then the word is left unchanged.  The character . at&lt;br /&gt;
     the start of a file name or immediately following a /, and&lt;br /&gt;
     the character /, must be matched explicitly.&lt;br /&gt;
&lt;br /&gt;
     *    Matches any string, including the null string.&lt;br /&gt;
     ?    Matches any single character.&lt;br /&gt;
     [...]&lt;br /&gt;
          Matches any one of the characters enclosed.  A pair of&lt;br /&gt;
          characters separated by - matches any character lexi-&lt;br /&gt;
          cally between the pair.&lt;br /&gt;
&lt;br /&gt;
     Quoting.&lt;br /&gt;
     The following characters have a special meaning to the shell&lt;br /&gt;
     and cause termination of a word unless quoted.&lt;br /&gt;
&lt;br /&gt;
          ;   &amp;amp;   (   )   |   &amp;lt;   &amp;gt;   newline   space   tab&lt;br /&gt;
&lt;br /&gt;
     A character may be _q_u_o_t_e_d by preceding it with a \.  \new-&lt;br /&gt;
     line is ignored.  All characters enclosed between a pair of&lt;br /&gt;
     quote marks (''), except a single quote, are quoted.  Inside&lt;br /&gt;
     double quotes (&amp;quot;&amp;quot;) parameter and command substitution occurs&lt;br /&gt;
     and \ quotes the characters \ ` &amp;quot; and $.&lt;br /&gt;
&lt;br /&gt;
     &amp;quot;$*&amp;quot; is equivalent to &amp;quot;$1 $2 ...&amp;quot; whereas&lt;br /&gt;
     &amp;quot;$@&amp;quot; is equivalent to &amp;quot;$1&amp;quot; &amp;quot;$2&amp;quot; ... .&lt;br /&gt;
&lt;br /&gt;
     Prompting.&lt;br /&gt;
     When used interactively, the shell prompts with the value of&lt;br /&gt;
     PS1 before reading a command.  If at any time a newline is&lt;br /&gt;
     typed and further input is needed to complete a command then&lt;br /&gt;
     the secondary prompt ($PS2) is issued.&lt;br /&gt;
&lt;br /&gt;
     Input output.&lt;br /&gt;
     Before a command is executed its input and output may be&lt;br /&gt;
     redirected using a special notation interpreted by the&lt;br /&gt;
     shell.  The following may appear anywhere in a simple-&lt;br /&gt;
     command or may precede or follow a _c_o_m_m_a_n_d and are not&lt;br /&gt;
     passed on to the invoked command.  Substitution occurs&lt;br /&gt;
     before _w_o_r_d or _d_i_g_i_t is used.&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;_w_o_r_d&lt;br /&gt;
          Use file _w_o_r_d as standard input (file descriptor 0).&lt;br /&gt;
&lt;br /&gt;
     &amp;gt;_w_o_r_d&lt;br /&gt;
          Use file _w_o_r_d as standard output (file descriptor 1).&lt;br /&gt;
          If the file does not exist then it is created; other-&lt;br /&gt;
          wise it is truncated to zero length.&lt;br /&gt;
&lt;br /&gt;
     &amp;gt;&amp;gt;_w_o_r_d&lt;br /&gt;
          Use file _w_o_r_d as standard output.  If the file exists&lt;br /&gt;
          then output is appended (by seeking to the end); other-&lt;br /&gt;
          wise the file is created.&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;&amp;lt;_w_o_r_d&lt;br /&gt;
          The shell input is read up to a line the same as _w_o_r_d,&lt;br /&gt;
          or end of file.  The resulting document becomes the&lt;br /&gt;
          standard input.  If any character of _w_o_r_d is quoted&lt;br /&gt;
          then no interpretation is placed upon the characters of&lt;br /&gt;
          the document; otherwise, parameter and command substi-&lt;br /&gt;
          tution occurs, \newline is ignored, and \ is used to&lt;br /&gt;
          quote the characters \ $ ` and the first character of&lt;br /&gt;
          _w_o_r_d.&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;&amp;amp;_d_i_g_i_t&lt;br /&gt;
          The standard input is duplicated from file descriptor&lt;br /&gt;
          _d_i_g_i_t; see _d_u_p(2).  Similarly for the standard output&lt;br /&gt;
          using &amp;gt;.&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;&amp;amp;-  The standard input is closed.  Similarly for the stan-&lt;br /&gt;
          dard output using &amp;gt;.&lt;br /&gt;
&lt;br /&gt;
     If one of the above is preceded by a digit then the file&lt;br /&gt;
     descriptor created is that specified by the digit (instead&lt;br /&gt;
     of the default 0 or 1).  For example,&lt;br /&gt;
&lt;br /&gt;
          ... 2&amp;gt;&amp;amp;1&lt;br /&gt;
&lt;br /&gt;
     creates file descriptor 2 to be a duplicate of file descrip-&lt;br /&gt;
     tor 1.&lt;br /&gt;
&lt;br /&gt;
     If a command is followed by &amp;amp; then the default standard&lt;br /&gt;
     input for the command is the empty file (/dev/null).  Other-&lt;br /&gt;
     wise, the environment for the execution of a command con-&lt;br /&gt;
     tains the file descriptors of the invoking shell as modified&lt;br /&gt;
     by input output specifications.&lt;br /&gt;
&lt;br /&gt;
     Environment.&lt;br /&gt;
     The environment is a list of name-value pairs that is passed&lt;br /&gt;
     to an executed program in the same way as a normal argument&lt;br /&gt;
     list; see _e_x_e_c(2) and _e_n_v_i_r_o_n(5).  The shell interacts with&lt;br /&gt;
     the environment in several ways.  On invocation, the shell&lt;br /&gt;
     scans the environment and creates a _p_a_r_a_m_e_t_e_r for each name&lt;br /&gt;
     found, giving it the corresponding value.  Executed commands&lt;br /&gt;
     inherit the same environment.  If the user modifies the&lt;br /&gt;
     values of these _p_a_r_a_m_e_t_e_r_s or creates new ones, none of&lt;br /&gt;
     these affects the environment unless the export command is&lt;br /&gt;
     used to bind the shell's _p_a_r_a_m_e_t_e_r to the environment.  The&lt;br /&gt;
     environment seen by any executed command is thus composed of&lt;br /&gt;
     any unmodified name-value pairs originally inherited by the&lt;br /&gt;
     shell, plus any modifications or additions, all of which&lt;br /&gt;
     must be noted in export commands.&lt;br /&gt;
&lt;br /&gt;
     The environment for any _s_i_m_p_l_e-_c_o_m_m_a_n_d may be augmented by&lt;br /&gt;
     prefixing it with one or more assignments to _p_a_r_a_m_e_t_e_r_s.&lt;br /&gt;
     Thus these two lines are equivalent&lt;br /&gt;
&lt;br /&gt;
          TERM=450 cmd args&lt;br /&gt;
          (export TERM; TERM=450; cmd args)&lt;br /&gt;
&lt;br /&gt;
     If the -k flag is set, _a_l_l keyword arguments are placed in&lt;br /&gt;
     the environment, even if the occur after the command name.&lt;br /&gt;
     The following prints `a=b c' and `c':&lt;br /&gt;
     echo a=b c&lt;br /&gt;
     set -k&lt;br /&gt;
     echo a=b c&lt;br /&gt;
&lt;br /&gt;
     Signals.&lt;br /&gt;
     The INTERRUPT and QUIT signals for an invoked command are&lt;br /&gt;
     ignored if the command is followed by &amp;amp;; otherwise signals&lt;br /&gt;
     have the values inherited by the shell from its parent.&lt;br /&gt;
     (But see also trap.)&lt;br /&gt;
&lt;br /&gt;
     Execution.&lt;br /&gt;
     Each time a command is executed the above substitutions are&lt;br /&gt;
     carried out.  Except for the `special commands' listed below&lt;br /&gt;
     a new process is created and an attempt is made to execute&lt;br /&gt;
     the command via an _e_x_e_c(2).&lt;br /&gt;
&lt;br /&gt;
     The shell parameter $PATH defines the search path for the&lt;br /&gt;
     directory containing the command.  Each alternative direc-&lt;br /&gt;
     tory name is separated by a colon (:).  The default path is&lt;br /&gt;
     :/bin:/usr/bin.  If the command name contains a / then the&lt;br /&gt;
     search path is not used.  Otherwise, each directory in the&lt;br /&gt;
     path is searched for an executable file.  If the file has&lt;br /&gt;
     execute permission but is not an _a._o_u_t file, it is assumed&lt;br /&gt;
     to be a file containing shell commands.  A subshell (i.e., a&lt;br /&gt;
     separate process) is spawned to read it.  A parenthesized&lt;br /&gt;
     command is also executed in a subshell.&lt;br /&gt;
&lt;br /&gt;
     Special commands.&lt;br /&gt;
     The following commands are executed in the shell process and&lt;br /&gt;
     except where specified no input output redirection is per-&lt;br /&gt;
     mitted for such commands.&lt;br /&gt;
&lt;br /&gt;
     :    No effect; the command does nothing.&lt;br /&gt;
     . _f_i_l_e&lt;br /&gt;
          Read and execute commands from _f_i_l_e and return.  The&lt;br /&gt;
          search path $PATH is used to find the directory con-&lt;br /&gt;
          taining _f_i_l_e.&lt;br /&gt;
     break [_n]&lt;br /&gt;
          Exit from the enclosing for or while loop, if any.  If&lt;br /&gt;
          _n is specified then break _n levels.&lt;br /&gt;
     continue [_n]&lt;br /&gt;
          Resume the next iteration of the enclosing for or while&lt;br /&gt;
          loop.  If _n is specified then resume at the _n-th&lt;br /&gt;
          enclosing loop.&lt;br /&gt;
     cd [_a_r_g]&lt;br /&gt;
          Change the current directory to _a_r_g. The shell parame-&lt;br /&gt;
          ter $HOME is the default _a_r_g.&lt;br /&gt;
     eval [_a_r_g ...]&lt;br /&gt;
          The arguments are read as input to the shell and the&lt;br /&gt;
          resulting command(s) executed.&lt;br /&gt;
     exec [_a_r_g ...]&lt;br /&gt;
          The command specified by the arguments is executed in&lt;br /&gt;
          place of this shell without creating a new process.&lt;br /&gt;
          Input output arguments may appear and if no other argu-&lt;br /&gt;
          ments are given cause the shell input output to be&lt;br /&gt;
          modified.&lt;br /&gt;
     exit [_n]&lt;br /&gt;
          Causes a non interactive shell to exit with the exit&lt;br /&gt;
          status specified by _n. If _n is omitted then the exit&lt;br /&gt;
          status is that of the last command executed.  (An end&lt;br /&gt;
          of file will also exit from the shell.)&lt;br /&gt;
     export [_n_a_m_e ...]&lt;br /&gt;
          The given names are marked for automatic export to the&lt;br /&gt;
          _e_n_v_i_r_o_n_m_e_n_t of subsequently-executed commands.  If no&lt;br /&gt;
          arguments are given then a list of exportable names is&lt;br /&gt;
          printed.&lt;br /&gt;
     login [_a_r_g ...]&lt;br /&gt;
          Equivalent to `exec login arg ...'.&lt;br /&gt;
     newgrp [_a_r_g ...]&lt;br /&gt;
          Equivalent to `exec newgrp arg ...'.&lt;br /&gt;
     read _n_a_m_e ...&lt;br /&gt;
          One line is read from the standard input; successive&lt;br /&gt;
          words of the input are assigned to the variables _n_a_m_e&lt;br /&gt;
          in order, with leftover words to the last variable.&lt;br /&gt;
          The return code is 0 unless the end-of-file is encoun-&lt;br /&gt;
          tered.&lt;br /&gt;
     readonly [_n_a_m_e ...]&lt;br /&gt;
          The given names are marked readonly and the values of&lt;br /&gt;
          the these names may not be changed by subsequent&lt;br /&gt;
          assignment.  If no arguments are given then a list of&lt;br /&gt;
          all readonly names is printed.&lt;br /&gt;
     set [-eknptuvx [_a_r_g ...]]&lt;br /&gt;
          -e If non interactive then exit immediately if a com-&lt;br /&gt;
             mand fails.&lt;br /&gt;
          -k All keyword arguments are placed in the environment&lt;br /&gt;
             for a command, not just those that precede the com-&lt;br /&gt;
             mand name.&lt;br /&gt;
          -n Read commands but do not execute them.&lt;br /&gt;
          -t Exit after reading and executing one command.&lt;br /&gt;
          -u Treat unset variables as an error when substituting.&lt;br /&gt;
          -v Print shell input lines as they are read.&lt;br /&gt;
          -x Print commands and their arguments as they are exe-&lt;br /&gt;
             cuted.&lt;br /&gt;
          -  Turn off the -x and -v options.&lt;br /&gt;
&lt;br /&gt;
          These flags can also be used upon invocation of the&lt;br /&gt;
          shell.  The current set of flags may be found in $-.&lt;br /&gt;
&lt;br /&gt;
          Remaining arguments are positional parameters and are&lt;br /&gt;
          assigned, in order, to $1, $2, etc.  If no arguments&lt;br /&gt;
          are given then the values of all names are printed.&lt;br /&gt;
&lt;br /&gt;
     shift&lt;br /&gt;
          The positional parameters from $2...  are renamed $1...&lt;br /&gt;
&lt;br /&gt;
     times&lt;br /&gt;
          Print the accumulated user and system times for&lt;br /&gt;
          processes run from the shell.&lt;br /&gt;
&lt;br /&gt;
     trap [_a_r_g] [_n] ...&lt;br /&gt;
          _A_r_g is a command to be read and executed when the shell&lt;br /&gt;
          receives signal(s) _n. (Note that _a_r_g is scanned once&lt;br /&gt;
          when the trap is set and once when the trap is taken.)&lt;br /&gt;
          Trap commands are executed in order of signal number.&lt;br /&gt;
          If _a_r_g is absent then all trap(s) _n are reset to their&lt;br /&gt;
          original values.  If _a_r_g is the null string then this&lt;br /&gt;
          signal is ignored by the shell and by invoked commands.&lt;br /&gt;
          If _n is 0 then the command _a_r_g is executed on exit from&lt;br /&gt;
          the shell, otherwise upon receipt of signal _n as num-&lt;br /&gt;
          bered in _s_i_g_n_a_l(2).  _T_r_a_p with no arguments prints a&lt;br /&gt;
          list of commands associated with each signal number.&lt;br /&gt;
&lt;br /&gt;
     umask [ _n_n_n ]&lt;br /&gt;
          The user file creation mask is set to the octal value&lt;br /&gt;
          _n_n_n (see _u_m_a_s_k(2)).  If _n_n_n is omitted, the current&lt;br /&gt;
          value of the mask is printed.&lt;br /&gt;
&lt;br /&gt;
     wait [_n]&lt;br /&gt;
          Wait for the specified process and report its termina-&lt;br /&gt;
          tion status.  If _n is not given then all currently&lt;br /&gt;
          active child processes are waited for.  The return code&lt;br /&gt;
          from this command is that of the process waited for.&lt;br /&gt;
&lt;br /&gt;
     Invocation.&lt;br /&gt;
     If the first character of argument zero is -, commands are&lt;br /&gt;
     read from $HOME/.profile, if such a file exists.  Commands&lt;br /&gt;
     are then read as described below.  The following flags are&lt;br /&gt;
     interpreted by the shell when it is invoked.&lt;br /&gt;
     -c _s_t_r_i_n_g  If the -c flag is present then commands are read&lt;br /&gt;
                from _s_t_r_i_n_g.&lt;br /&gt;
     -s         If the -s flag is present or if no arguments&lt;br /&gt;
                remain then commands are read from the standard&lt;br /&gt;
                input.  Shell output is written to file descrip-&lt;br /&gt;
                tor 2.&lt;br /&gt;
     -i         If the -i flag is present or if the shell input&lt;br /&gt;
                and output are attached to a terminal (as told by&lt;br /&gt;
                _g_t_t_y) then this shell is _i_n_t_e_r_a_c_t_i_v_e. In this&lt;br /&gt;
                case the terminate signal SIGTERM (see _s_i_g_n_a_l(2))&lt;br /&gt;
                is ignored (so that `kill 0' does not kill an&lt;br /&gt;
                interactive shell) and the interrupt signal SIG-&lt;br /&gt;
                INT is caught and ignored (so that wait is inter-&lt;br /&gt;
                ruptable).  In all cases SIGQUIT is ignored by&lt;br /&gt;
                the shell.&lt;br /&gt;
&lt;br /&gt;
     The remaining flags and arguments are described under the&lt;br /&gt;
     set command.&lt;br /&gt;
&lt;br /&gt;
== FILES ==&lt;br /&gt;
     $HOME/.profile&lt;br /&gt;
     /tmp/sh*&lt;br /&gt;
     /dev/null&lt;br /&gt;
&lt;br /&gt;
== SEE ALSO ==&lt;br /&gt;
     [[32v 1m test|test(1)]], [[32v 2m exec|exec(2),]]&lt;br /&gt;
&lt;br /&gt;
== DIAGNOSTICS ==&lt;br /&gt;
     Errors detected by the shell, such as syntax errors cause&lt;br /&gt;
     the shell to return a non zero exit status.  If the shell is&lt;br /&gt;
     being used non interactively then execution of the shell&lt;br /&gt;
     file is abandoned.  Otherwise, the shell returns the exit&lt;br /&gt;
     status of the last command executed (see also exit).&lt;br /&gt;
&lt;br /&gt;
== BUGS ==&lt;br /&gt;
     IF &amp;lt;&amp;lt; is used to provide standard input to an asynchronous&lt;br /&gt;
     process invoked by &amp;amp;, the shell gets mixed up about naming&lt;br /&gt;
     the input document.  A garbage file /tmp/sh* is created, and&lt;br /&gt;
     the shell complains about not being able to find the file by&lt;br /&gt;
     another name.&lt;br /&gt;
&lt;br /&gt;
[[Category:32v man section 1]]&lt;/div&gt;</summary>
		<author><name>Neozeed</name></author>	</entry>

	</feed>