MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


User Commands                                             exec(1)



NAME
     exec, eval, source - shell  built-in  functions  to  execute
     other commands

SYNOPSIS
  sh
     exec [argument]...


     eval [argument]...


  csh
     exec command


     eval argument...


     source [-h] name


  ksh
     *exec [argument]...


     *eval [argument]...


  ksh93
     ]exec [-c] [-a name] [command [argument ... ]


     ]eval [argument]...


DESCRIPTION
  sh
     The exec command specified by the arguments is  executed  in
     place   of  this  shell  without  creating  a  new  process.
     Input/output arguments and appear and, if no other arguments
     are specified, cause the shell input/output to be modified.


     The arguments to the eval built-in are read as input to  the
     shell and the resulting command(s) executed.

  csh
     exec executes command in place of the current  shell,  which
     terminates.





SunOS 5.11           Last change: 8 Apr 2008                    1






User Commands                                             exec(1)



     eval reads its arguments as input to the shell and  executes
     the  resulting  command(s).  This is usually used to execute
     commands generated as the result of command or variable sub-
     stitution.


     source reads commands from  name.  source  commands  can  be
     nested,  but if they are nested too deeply the shell can run
     out of file descriptors. An error in a sourced file  at  any
     level terminates all nested source commands.

     -h    Place commands from the file name on the history  list
           without executing them.


  ksh
     With the exec built-in, if arg  is  specified,  the  command
     specified  by  the  arguments  is  executed in place of this
     shell without creating a new process. Input/output arguments
     can  appear  and affect the current process. If no arguments
     are specified the effect of this command is to  modify  file
     descriptors  as  prescribed  by the input/output redirection
     list. In this case, any file descriptor numbers greater than
     2 that are opened with this mechanism are closed when invok-
     ing another program.


     The arguments to eval are read as input to the shell and the
     resulting command(s) executed.


     On this man page, ksh(1) commands that are preceded  by  one
     or  two * (asterisks) are treated specially in the following
     ways:

         1.   Variable assignment  lists  preceding  the  command
              remain in effect when the command completes.

         2.   I/O  redirections  are  processed  after   variable
              assignments.

         3.   Errors cause a script that contains them to abort.

         4.   Words, following a command preceded by ** that  are
              in   the  format  of  a  variable  assignment,  are
              expanded with the same rules as a variable  assign-
              ment.  This  means  that tilde substitution is per-
              formed after the = sign and word splitting and file
              name generation are not performed.

  ksh93




SunOS 5.11           Last change: 8 Apr 2008                    2






User Commands                                             exec(1)



     exec is a special built-in command that can be used to mani-
     pulate file descriptors or to replace the current shell with
     a new command.


     If command is specified, then the current shell  process  is
     replaced  by command rather than running command and waiting
     for it to complete. There is no need to use exec to  enhance
     performance since the shell implicitly uses the exec mechan-
     ism internally whenever possible.


     If no operands are specified, exec can be used  to  open  or
     close  files,  or to manipulate file descriptors from 0 to 9
     in the current shell environment using the standard redirec-
     tion  mechanism  available  with all commands. The close-on-
     exec flags is set on file descriptor numbers greater than  2
     that  are  opened  this  way  so  that  they are closed when
     another program is invoked.


     Because exec is a special command, any  failure  causes  the
     script  that  invokes  it  to exit. This can be prevented by
     invoking exec from the command  utility.


     exec cannot be invoked from a  restricted  shell  to  create
     files or to open a file for writing or appending.


     eval is a shell special built-in command that  constructs  a
     command  by concatenating the arguments together, separating
     each with a space. The resulting string is taken as input to
     the  shell and evaluated in the current environment. command
     words are expanded twice, once to  construct  argument,  and
     again when the shell executes the constructed command. It is
     not an error if argument is not specified.


     On this manual page, ksh93 commands that are preceded by one
     or  two  ]  symbols  are  special  built-in commands and are
     treated specially in the following ways:

         1.   Variable assignment  lists  preceding  the  command
              remain in effect when the command completes.

         2.   I/O  redirections  are  processed  after   variable
              assignments.

         3.   Errors cause a script that contains them to abort.

         4.   They are not valid function names.



SunOS 5.11           Last change: 8 Apr 2008                    3






User Commands                                             exec(1)



         5.   Words following a command preceded by ]  that  are
              in the format of a variable assignment are expanded
              with the same rules as a variable assignment.  This
              means  that  tilde  substitution is performed after
              the = sign and field splitting and file  name  gen-
              eration are not performed.

OPTIONS
  ksh93
     The following options are supported by ksh93 exec:

     -a name    argv[0] is set to name for command.


     -c         Clear all environment variables before executions
                except  variable assignments that are part of the
                current exec command.


EXIT STATUS
  ksh
     The following exit values are returned by exec:

     0        Successful completion.


     1-125    A redirection error occurred.


     127      command was not found.


     126      command was found, but  it  is  not  an  executable
              utility.


  ksh93
     The following exit values are returned by exec.  If  command
     is specified, exec does not return.

     0     Successful completion. All I/O redirections were  suc-
           cessful.


     >0    An error occurred.



     The following exit values are returned by eval:






SunOS 5.11           Last change: 8 Apr 2008                    4






User Commands                                             exec(1)



     If argument is not specified, the exit status is  0.  Other-
     wise,  it  is  the exit status of the command defined by the
     argument operands.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Availability                 SUNWcsu                     
    


SEE ALSO
     csh(1), ksh(1), ksh93(1), sh(1), attributes(5)




































SunOS 5.11           Last change: 8 Apr 2008                    5



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™