Man Linux: Main Page and Category List

NAME

       readonly - set the readonly attribute for variables

SYNOPSIS

       readonly name[=word]...

       readonly -p

DESCRIPTION

       The  variables  whose  names  are specified shall be given the readonly
       attribute. The values of variables with the readonly  attribute  cannot
       be  changed  by subsequent assignment, nor can those variables be unset
       by the unset utility. If the name of a variable is followed by =  word,
       then the value of that variable shall be set to word.

       The readonly special built-in shall support the Base Definitions volume
       of IEEE Std 1003.1-2001, Section 12.2, Utility Syntax Guidelines.

       When -p is specified, readonly writes to the standard output the  names
       and values of all read-only variables, in the following format:

              "readonly %s=%s\n", <name>, <value>

       if name is set, and

              "readonly %s\n", <name>

       if name is unset.

       The shell shall format the output, including the proper use of quoting,
       so that it is suitable for  reinput  to  the  shell  as  commands  that
       achieve  the  same  value  and  readonly attribute-setting results in a
       shell execution environment in which:

        1. Variables with values at the time they were output do not have  the
           readonly attribute set.

        2. Variables  that were unset at the time they were output do not have
           a value at the time at which the saved output  is  reinput  to  the
           shell.

       When no arguments are given, the results are unspecified.

OPTIONS

       See the DESCRIPTION.

OPERANDS

       See the DESCRIPTION.

STDIN

       Not used.

INPUT FILES

       None.

ENVIRONMENT VARIABLES

       None.

ASYNCHRONOUS EVENTS

       Default.

STDOUT

       See the DESCRIPTION.

STDERR

       The standard error shall be used only for diagnostic messages.

OUTPUT FILES

       None.

EXTENDED DESCRIPTION

       None.

EXIT STATUS

       Zero.

CONSEQUENCES OF ERRORS

       Default.

       The following sections are informative.

APPLICATION USAGE

       None.

EXAMPLES

              readonly HOME PWD

RATIONALE

       Some  historical shells preserve the readonly attribute across separate
       invocations. This volume of IEEE Std 1003.1-2001 allows this  behavior,
       but does not require it.

       The  -p  option  allows portable access to the values that can be saved
       and then later restored using, for example, a dot script.  Also see the
       RATIONALE for export for a description of the no-argument and -p output
       cases and a related example.

       Read-only functions were considered, but they were omitted as not being
       historical practice or particularly useful. Furthermore, functions must
       not be read-only across invocations to preclude ‘‘spoofing’’  (spoofing
       is  the  term  for  the practice of creating a program that acts like a
       well-known utility with the intent of subverting the real intent of the
       user)  of  administrative  or security-relevant (or security-conscious)
       shell scripts.

FUTURE DIRECTIONS

       None.

SEE ALSO

       Special Built-In Utilities

COPYRIGHT

       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .