Chapter 26. Input and Output

In input/output operations, filehandle may be a filehandle as opened by the open operator, a predefined filehandle (e.g., STDOUT), or a scalar variable that evaluates to a reference to or the name of a filehandle to be used.


In scalar context, reads a single record, usually a line, from the file opened on filehandle. In list context, reads the rest of the file.


Reads from the input stream formed by the files specified in @ARGV, or standard input if no arguments were supplied.

binmode filehandle [ , layers ]

Arranges for the file opened on filehandle to be read or written using the specified I/O layers (default: :raw). For a list of Standard I/O Layers.

close [ filehandle ]

Closes the filehandle. Resets $. if it was an input file. If filehandle is omitted, closes the currently selected filehandle.

dbmclose %hash

Closes the file associated with the hash. Superseded by untie.

dbmopen %hash, dbmname, mode

Opens a dbm file and associates it with the hash. Superseded by tie.

eof filehandle

Returns true if the next read will return EOF (end of file) or if the file is not open.


Returns the EOF status for the last file read.


Indicates EOF on the pseudo-file formed of the files listed on the command line.

fcntl filehandle, function, $var

Calls system-dependent file control functions.

fileno filehandle

Returns the file descriptor for a given (open) file.

flock filehandle, operation

Calls a system-dependent locking routine on the file. operation is formed ...

Get Perl Pocket Reference, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.