READONLY(1P) - phpMan

READONLY(1P)               POSIX Programmer's Manual              READONLY(1P)

PROLOG
       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the  corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.
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 .

IEEE/The Open Group                  2003                         READONLY(1P)