diff options
| -rwxr-xr-x | challenge-072/simon-miner/perl/ch-2.pl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/challenge-072/simon-miner/perl/ch-2.pl b/challenge-072/simon-miner/perl/ch-2.pl new file mode 100755 index 0000000000..cc69190821 --- /dev/null +++ b/challenge-072/simon-miner/perl/ch-2.pl @@ -0,0 +1,21 @@ +use strict; +use warnings; +use Getopt::Std; + +my %args = ( +); +getopts( 'e:s:', \%args ); +my $file = shift @ARGV; +die "Please specify a file.\n" unless $file; +die "File $file does not exist.\n" unless -e $file; +die "Please specify a positive integer for -s.\n" if $args{s} && $args{s} !~ m/^\d+$/; +die "Please specify a positive integer for -e.\n" if $args{e} && $args{e} !~ m/^\d+$/; + +open( my $fh, '<', $file ) or die "Could not open file $file - $!\n"; +while ( <$fh> ) { + next if defined( $args{s} ) && $. < $args{s}; + next if defined( $args{e} ) && $. > $args{e}; + print; +} +close( $fh ); + |
