use strict; open (INFILE, "outfile") or die "could not open file"; ; # dump the header on the first line while () { print OUTFILE join(" ", (split "~", $_)[0,3]), "\n"; } close INFILE; close OUTFILE; #### D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 444912 D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 966656 D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 190994 D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 194417 D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 916765 D:\minibuild\nbsssbs\appl\src\erlmtrihm.cxx 955515 #### perl -e '$,=" ";while (<>) {print ((split "~", $_)[0,3],"\n") if (/~/)}'outfile #### perl -aF/~/ -ne '$,=" ";print (@F[0,3],"\n") if /~/' infile >outfile