close(FILEHANDLE)

close FILEHANDLE

Closes the file or pipe associated with the file
handle. You don't have to close FILEHANDLE if you
are immediately going to do another open on it,
since open will close it for you. (See open.) How-
ever, an explicit close on an input file resets the
line counter ($.), while the implicit close done by
open does not. Also, closing a pipe will wait for
the process executing on the pipe to complete, in
case you want to look at the output of the pipe
afterwards. Closing a pipe explicitly also puts the
status value of the command into $?. Example:

open(OUTPUT, '|sort >foo'); # pipe to sort
... # print stuff to output
close OUTPUT; # wait for sort to finish
open(INPUT, 'foo'); # get sort's results

FILEHANDLE may be an expression whose value gives
the real filehandle name.