#/usr/bin/perl use strict; use warnings; use IO::File; use 5.010; my $filename = shift @ARGV; my $fh = IO::File->new($filename, 'r'); sub fh_iterator { my $fh = shift; my $line = $fh->getline; $line .= fh_iterator($fh) while $line =~ m{\\$}; } while (my $line = fh_iterator $fh ) { print $line; } __END___ test.file foo \ bar \ baz single line