aboutsummaryrefslogtreecommitdiff
path: root/challenge-072
diff options
context:
space:
mode:
authorNiels van Dijke <perlboy@cpan.org>2020-08-03 09:45:36 +0000
committerNiels van Dijke <perlboy@cpan.org>2020-08-03 09:45:36 +0000
commitd69730cd8131f5f89ea4d4b29af94e3b32fe0251 (patch)
tree7b8578826d8d01b71de793fb2197d9c4aa059c27 /challenge-072
parentbb2c504177b1a5fbda6435b597c319e0a9249728 (diff)
downloadperlweeklychallenge-club-d69730cd8131f5f89ea4d4b29af94e3b32fe0251.tar.gz
perlweeklychallenge-club-d69730cd8131f5f89ea4d4b29af94e3b32fe0251.tar.bz2
perlweeklychallenge-club-d69730cd8131f5f89ea4d4b29af94e3b32fe0251.zip
Task 2
Diffstat (limited to 'challenge-072')
-rwxr-xr-xchallenge-072/perlboy1967/perl/ch-2.pl27
1 files changed, 27 insertions, 0 deletions
diff --git a/challenge-072/perlboy1967/perl/ch-2.pl b/challenge-072/perlboy1967/perl/ch-2.pl
new file mode 100755
index 0000000000..f664a4a120
--- /dev/null
+++ b/challenge-072/perlboy1967/perl/ch-2.pl
@@ -0,0 +1,27 @@
+#!/usr/bin/perl
+
+# Perl Weekly Challenge - 072
+#
+# Task 2 - Lines Range
+#
+# Author: Niels 'PerlBoy' van Dijke
+
+my ($file, $A, $B) = @ARGV;
+
+die "Cannot read from '$file' ($!)"
+ unless (-r $file);
+
+die "A must be positve number"
+ unless (defined $A and $A =~ m#^[1-9][0-9]*$#);
+
+die "B must be positve number and bigger than A"
+ unless (defined $A and $A =~ m#^[1-9][0-9]*$# and $A <= $B);
+
+if (!open(F, "<$file")) {
+ die "Weird... I thought we could read from '$file'...";
+} else {
+ while (<F>) {
+ print if ($. >= $A and $. <= $B);
+ }
+ close(F);
+}