#!/usr/bin/perl -w
# This script searches for a pattern similar to this:
#
#
#
BIO 110 Biology Seminar
#
# This offering serves to introduce the majors to the broad field of biological
# sciences through seminars and discussions focusing on current subject areas,
# approaches and techniques used by scientists to understand the living world.
# Specific content will vary depending on instructor. Fl, Sp-1-
#
#
use 5.004;
use Getopt::Std qw(&getopts);
use subs qw(&bail);
use vars qw($opt_d $DEBUG);
use vars qw($file @files);
use vars qw($contents @contents);
use vars qw(@courses);
local (*FILE);
$DEBUG = 0;
if (!getopts('-d')) {
&bail("invalid arguments");
}
if (defined $opt_d) {
$DEBUG = 1;
}
if ($#ARGV < 0) {
&bail("usage:: " . $0 . " file [ file ... ]\n");
}
@files = @ARGV;
if ($DEBUG > 0) {
print STDOUT "starting with file $files[0]\n";
}
foreach $file (@files) {
if ($DEBUG > 0) {
print STDOUT "processing $file\n";
}
if (!(open FILE, "<$file")) {
warn "can't open $file\n";
next;
}
@contents = ;
close FILE;
@contents || next;
$contents = join "", @contents;
# print $contents;
@courses = split m#
\n?
# , $contents;
foreach my $course (@courses) {
my $t1 = $course =~ /global/i;
my $t2 = $course =~ /sustain/i;
my $t3 = $course =~ /warm/i;
my $t4 = $course =~ /earth/i;
if ($t1 || $t2 || $t3 || $t4) {
print "$course";
}
print "---------------------------\n";
}
exit 0;
}
exit 0;
sub bail
{
my $error = "@_";
print "$error\n";
exit 1;
}