source(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 [arg...]
*eval [arg...]
DESCRIPTION
sh
The exec command specified by the arguments is executed in
place of this shell without creating a new process.
Input/output arguments may appear and, if no other arguments
are given, 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.
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 may be
nested, but if they are nested too deeply the shell may 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 given, the command speci-
fied by the arguments is executed in place of this shell
without creating a new process. Input/output arguments may
appear and affect the current process. If no arguments are
given the effect of this command is to modify file descrip-
tors 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 invoking
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 assign-
ments.
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 assignment. This means that
tilde substitution is performed after the = sign and word
splitting and file name generation are not performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWcsu |
|_____________________________|_____________________________|
SEE ALSO
csh(1), ksh(1), sh(1), attributes(5)
Man(1) output converted with
man2html