on Tue, 20 Aug 2002 16:22:31 GMT, Jessica wrote: > I am attempting to extract a two words or fields from every line of a > tab delimited file. Sometimes the words that I need are in fields 1 & > 2 and other time they are in 2 & 3. The lines look something like > this: > > TypeOfApp ApplicationName RunStatus > --------------------------------------------------------------------- > > application run_me_now complete > application2 ran_me_yesterday complete/errors > need_to_run_tomorrow failed > > I am in need of just extracting the ApplicationName and RunStatus > from the lines and placing them in variables so that I can do things > with them. > > I think I'm smart enought to know how to get the file opened and get > the lines into a while loop like so: > > open (FILE, ./datafile);
Unfortunately, this is not the case: You forgot to turn on warnings and strictures. You didn't quote your filename. You didn't check the return value of the open-call. Try this: #! perl -w use strict; open FILE, './datafile' or die "Could not open file: $!"; while (<FILE>) { chomp; # skip blank lines and column headers next if /^$/; next if /^---------/; next if /^TypeOfApp/; # keep last two fields my ($when, $result) = (split ' ')[-2,-1]; print "$when: $result\n"; } -- felix -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]