This is the msplit script that splits a unix mailbox file into
many separate files. Could someone please help me translating
it to gawk?
Daniel
msplit.pl
#!/usr/bin/perl
#$fname = $ARGV[0];
#$num = $ARGV[1];
#$prefix = $ARGV[2];
#$suffix = $ARGV[3];
$fname = shift;
$num = shift;
$prefix = shift;
$suffix = shift;
$nmsgs = 0;
$filenum = 0;
$ofile = $prefix . sprintf("%04d",$filenum) . $suffix;
open(OFILE,">" . $ofile);
open(INFILE,"<" . $fname);
while (<INFILE>) {
if(/^From /){
$nmsgs = $nmsgs + 1;
if ($nmsgs > $num) {
$filenum = $filenum + 1;
$ofile = $prefix . sprintf("%04d",$filenum) . $suffix;
close OFILE;
open(OFILE,">" . $ofile);
$nmsgs = 0;
}
}
print OFILE $_;
}
close OFILE;
close INFILE;