aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Miner <simon.miner@gmail.com>2020-08-03 14:12:09 -0400
committerSimon Miner <simon.miner@gmail.com>2020-08-03 14:12:09 -0400
commitab24cd7b14b94dd0889d7acb8040e8bdcdfb9704 (patch)
tree1943dde06d3060ec68e24800197504fa48ec3b3b
parent168c90ac5e83a1566a917223b83350cc0cdef55b (diff)
downloadperlweeklychallenge-club-ab24cd7b14b94dd0889d7acb8040e8bdcdfb9704.tar.gz
perlweeklychallenge-club-ab24cd7b14b94dd0889d7acb8040e8bdcdfb9704.tar.bz2
perlweeklychallenge-club-ab24cd7b14b94dd0889d7acb8040e8bdcdfb9704.zip
Write ch-2.pl for task #2 - line range
-rwxr-xr-xchallenge-072/simon-miner/perl/ch-2.pl21
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 );
+