set, unset -- set and unset local or global environment variables


   set [-l variable[=value]] . . .
   set [-e variable[=value ] ] . . .
   set [-ffile variable[=value ] ] . . .

unset -l variable . . . unset -ffile variable . . .


The set command sets variable in the environment, or adds variable=value to file. If variable is not equated it to a value, set expects the value to be on standard input. The unset command removes variable. Note that the FMLI predefined, read-only variables (such as ARG1), may not be set or unset.

FMLI inherits the UNIX environment when invoked:

sets or unsets the specified variable in the local environment. Variables set with -l will not be inherited by processes invoked from FMLI.

sets the specified variable in the UNIX environment. Variables set with -e will be inherited by any processes started from FMLI. Note that these variables cannot be unset.

sets or unsets the specified variable in the global environment. The argument file is the name, or pathname, of a file containing lines of the form variable=value. file will be created if it does not already exist. Note that no space intervenes between -f and file.

Note that at least one of the above options must be used for each variable being set or unset. If you set a variable with the -ffilename option, you must thereafter include filename in references to that variable. For example, ${(file)VARIABLE}.


Storing a selection made in a menu:
   name=Selection 2
   action=`set -l SELECTION=2`close


Variables set to be available to the UNIX environment (those set using the -e option) can only be set for the current fmli process and the processes it calls.

When using the -f option, unless file is unique to the process, other users of FMLI on the same machine will be able to expand these variables, depending on the read/write permissions on file.

A variable set in one frame may be referenced or unset in any other frame. This includes local variables.

When a variable is evaluated that does not specifically reference a file, the local environment and UNIX system environment are searched in that order. (When a set -l and a set -e is done for the same variable, the variable evaluates to the value used in the set -l command.)


env(1), sh(1)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004