read [-ers] [-u fd] [-t timeout] [-a aname] [-p prompt]
[-n nchars] [-d delim] [name ...]
[COLOR="Red"]One line is read from the standard input[/COLOR], or from
the file descriptor fd supplied as an argument to
the -u option, [COLOR="Red"]and the first word is assigned to
the first name, the second word to the second name,
and so on,[/COLOR] with leftover words and their interven*
ing separators assigned to the last name. If there
are fewer words read from the input stream than
names, the remaining names are assigned empty val*
ues. The characters in IFS are used to split the
line into words. The backslash character (\) may
be used to remove any special meaning for the next
character read and for line continuation. Options,
if supplied, have the following meanings:
-a aname
The words are assigned to sequential indices
of the array variable aname, starting at 0.
aname is unset before any new values are
assigned. Other name arguments are ignored.
-d delim
The first character of delim is used to ter*
minate the input line, rather than newline.
-e If the standard input is coming from a ter*
minal, readline (see READLINE above) is used
to obtain the line.
-n nchars
read returns after reading nchars characters
rather than waiting for a complete line of
input.
-p prompt
Display prompt on standard error, without a
trailing newline, before attempting to read
any input. The prompt is displayed only if
input is coming from a terminal.
-r Backslash does not act as an escape charac*
ter. The backslash is considered to be part
of the line. In particular, a backslash-
newline pair may not be used as a line con*
tinuation.
-s Silent mode. If input is coming from a ter*
minal, characters are not echoed.
-t timeout
Cause read to time out and return failure if
a complete line of input is not read within
timeout seconds. This option has no effect
if read is not reading input from the termi*
nal or a pipe.
-u fdFP
Read input from file descriptor fd.
If no names are supplied, the line read is assigned
to the variable REPLY. [COLOR="Red"]The return code is zero,
unless end-of-file is encountered, read times out,
or an invalid file descriptor is supplied as the
argument to -u.[/COLOR]