#!/usr/bin/perl use strict; { # Get filename, starting regex and stopping regex # from the command line. my ( $filename, $start, $stop ) = @ARGV; # Check the inputs, open the file. die "ERROR: Need to define start and stop arguments." unless ( defined($start) && defined($stop) ); open(INPUT, $filename) or die "Unable to open $filename: $!"; # Loop through the file, looking for the starting # regexp and skipping lines till then. while() { if ( /$start/ ) { # Found the matching line! Print it, and start # looking for the stopping regexp. print; while() { # If we found the stopping regexp, drop out # of this loop; otherwise, print a line and # keep going. if ( /$stop/ ) { last; } else { print; } } } } close(INPUT); }