Reads from the filehandle whose typeglob is contained in EXPR (or from
*ARGV if EXPR is not provided). In scalar context, each call reads and
returns the next line, until end-of-file is reached, whereupon the
subsequent call returns undef. In list context, reads until end-of-file
is reached and returns a list of lines. Note that the notion of "line"
used here is however you may have defined it with
). See $/ in perlvar.
This is the internal function implementing the
operator, but you can use it directly. The
operator is discussed in more detail in I/O Operators in perlop.
- $line = <STDIN>;
- $line = readline(*STDIN); # same thing
If readline encounters an operating system error,
will be set with the
corresponding error message. It can be helpful to check
when you are
reading from filehandles you don't trust, such as a tty or a socket. The
following example uses the operator form of
readline, and takes the necessary
steps to ensure that
readline was successful.