read

read a line from standard input

SYNTAX
      read [-ers] [-a aname] [-p prompt] [-t timeout] [-n nchars] [-d delim] [name ...]

OPTIONS

  -a aname 
 
    The words are assigned to sequential indices of the array variable aname, 
    starting at 0. All elements are removed from aname before the assignment. 
    Other name arguments are ignored. -d delim The first character of delim is 
    used to terminate the input line, rather than newline. -e Readline 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, without a trailing newline, before attempting
    to read any input. The prompt is displayed only if input is coming from a
    terminal.

  -r   
    If this option is given, backslash does not act as an escape character.
    The backslash is considered to be part of the line. In particular, a backslash-newline
    pair may not be used as a line continuation. 

  -s    
    Silent mode. If input is coming from a terminal, 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 terminal or a pipe.

This is a BASH shell builtin.

One line is read from the standard input, and the first word is assigned to the first name, the second word to the second name, and so on, with leftover words and their intervening separators assigned to the last name.

If there are fewer words read from the standard input than names, the remaining names are assigned empty values.

The characters in the value of the IFS variable 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.

If no names are supplied, the line read is assigned to the variable REPLY. The return code is zero, unless end-of-file is encountered or read times out.

Related commands:

select
- Accept keyboard input

Equivalent Windows NT commands:

none



Back to the Top

Simon Sheppard
SS64.com